【VBA研究】进入文本框后其内容全选

作者:iamlaosong

做一个扫描核对工具,扫描的条码在文本框中,表单中只有一个用于扫描的文本框是有效的,另一个文本框用于显示核对正确时显示货品数量,不过这个文本框用户是不能操作的,如下图所示:

由于需要反复扫描条码,所以希望每次扫描时能覆盖上次扫描的内容,这有两种方法,一种是核对完毕后清除文本框的内容,另一种方法就是将内容全选,显然,第二种方法较好,因为核对完毕后还可以看到上次扫描的内容,如果清空则有点怪怪的,看着不爽,设置全选的代码如下:

。。。

BarCode = TextBox1.Value

。。。

TextBox1.SelStart = 0

TextBox1.SelLength = Len(BarCode)

。。。

附:完整的核对子程序

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        '取条码值
        BarCode = TextBox1.Value
        '该条码是否本站货品
        For row2 = DatLine To MaxRow2
            If Scan(row2) = BarCode Then
                TextBox2.Value = Qty(row2)
                If Cells(row2, 10) <> "OK" Then
                    OK_No = OK_No + 1
                    Cells(row2, 10) = "OK"
                Else
                    TextBox2.Value = "重复"
                End If
                Exit For
            End If
        Next row2
        '如果没有找到,检查是否为箱码,通过箱码找到货品条码再次核对
        If UserForm1.CheckBox1.Value And row2 > MaxRow2 Then
            '找箱码对应条码
            For k = 1 To MaxRowBox
                If ScanBox(k, 2) = BarCode Then
                    BarCode = ScanBox(k, 1)
                    Exit For
                End If
            Next k
            If k <= MaxRowBox Then
                '找到箱码对应货品条码,再次核对
                For row2 = DatLine To MaxRow2
                    If Scan(row2) = BarCode Then
                        TextBox2.Value = Qty(row2)
                        If Cells(row2, 10) <> "OK" Then
                            OK_No = OK_No + 1
                            Cells(row2, 10) = "OK"
                        Else
                            TextBox2.Value = "重复"
                        End If
                        Exit For
                    End If
                Next row2
            End If
        End If

        '货品条码和箱码均不是
        If row2 > MaxRow2 Then
            tmp = MsgBox("本条码非本站货品,条码:" & BarCode, vbOKOnly + vbExclamation, "iamlaosong")
            TextBox2.Value = ""
            ErrNo = ErrNo + 1
        End If
        TextBox1.SelStart = 0
        TextBox1.SelLength = Len(BarCode)
        'TextBox1.Value = ""
    End If
End Sub

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-30 12:57:05

【VBA研究】进入文本框后其内容全选的相关文章

如何验证文本框中的内容是否为数字

如何验证文本框中的内容是否为数字:在某些情况下可能需要让文本框中的内容只能够输入数字,例如手机号码或者邮编之类的,下面简单介绍一下如何实现此功能.下面是验证数字的正则表达式: "^\\d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-\\d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?\

DEV中dx:ASPxPopupControl 控件的使用(在窗口关闭或隐藏时,清楚文本框中的内容)

//在窗口关闭或隐藏时,清楚文本框中的内容(核心代码) function(s, e) { ASPxClientEdit.ClearGroup('entryGroup'); } <asp:Content ID="Content1" ContentPlaceHolderID="ContentHolder" runat="Server"> <script type="text/javascript"> //

html5 textarea 文本框根据输入内容自适应高度

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>文本框根据输入内容自适应高度</title> <style type="t

如何禁止复制和黏贴文本框中的内容

如何禁止复制和黏贴文本框中的内容:在填写表单的时候,有时候会禁止复制黏贴一些重要的表单内容.例如,在充值话费的时候,需要填写两次手机号码,这个手机号码就不允许赋值黏贴,以防止手机号码填写错误.下面就通过实例简单介绍一下如何实现此效果.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>如何禁止文本框内容赋值黏贴</title> &

Jquery实现 TextArea 文本框根据输入内容自动适应高度

原文 Jquery实现 TextArea 文本框根据输入内容自动适应高度 在玩微博的时候我们可能会注意到一个细节就是不管是新浪微博还是腾讯微博在转发和评论的时候给你的默认文本框的高度都不会很高,这可能是版面的限制和用户通常只转播或者评论一个短句有关.但是当你输入超过一行文字的时候,TextArea自动适应高度,大大改善了体验,这样用户就可以看到全部的文字.不用再去拖动文本框的滚动条. 如下图: 这些在平时的项目中挺实用的,所以抽空封装了一个文本框根据输入内容自适应高度的插件 - TextArea

点击鼠标清除文本框中的内容

点击鼠标清除文本框中的内容:一般内容型的网站都有搜索功能,在默认状态下搜索框中都有默认的提示文本,例如“请输入要搜索的关键词”,但当搜索框获得焦点的时候,默认的提示文本内容会被清空,下面就简单介绍以下如何实现此功能,代码实例如下: <!<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="

Textarea 单击鼠标 清除默认字/点击文本域 默认内容消失/点击文本框 删除预置内容

Textarea 单击鼠标 清除默认字/点击文本域 默认内容消失/点击文本框 删除预置内容. Textarea 单击鼠标 清除默认字 点击文本域 默认内容消失 点击文本框 删除预置内容 在留言框.搜索栏或者Email订阅栏中有一段默认的文本,比如“请输入您的内容”,如果你在其中点击(窗体获取焦点),这段默认的文本就会自动消失. 第一步:添加代码方式: <head> …. <script type=”text/javascript”> function clearDefault(el

基于jQuery-autocomplete文本框自动联想补全特效

基于jQuery文本框自动联想补全特效.这是一款简单使用的jQuery自动完成插件,可定义索引关键词,可设置输入框的宽高,支持搜索回调函数.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id="demo"> <div class="wrapper"> <h3>试试输入"爱编程"</h3> <div id="search-form">&l

JS复选框向一个文本框中传值的多选效果

选择一个复选框,那么这个复选框的值就传到一个文本框中,如果这个文本框里有了就不用加了,没有则加.如果取消选择,则从文本框中取掉传的值.中间以“,”分隔,最后结尾没有“,”分隔符. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=&q