打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
一步步教你做简单的进销存系统(2:控件事件)
userphoto

2016.07.24

关注


上节我们讲到了控件的增加和基础代码,今天继续讲解控件的触发事件。

这一节的视频内容讲解,讲的不好,请不要见笑。

代码就不解释了,自己看视频吧!想获取本章的源代码请和视频资料请加微信:18622923987,或者直接淘宝扫描下面二维码:


代码如下:

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)   ’文字输入框的代码

    Dim i As Integer

    Dim Language As Boolean

    Dim myStr As String

    Me.ListBox1.Clear

    With Me.TextBox1

        For i = 1 To Len(.Value)

            If Asc(Mid$(.Value, i, 1)) > 255 Or Asc(Mid$(.Value, i, 1)) < 0="">

                Language = True

                myStr = myStr & Mid$(.Value, i, 1)

            Else

                myStr = myStr & LCase(Mid$(.Value, i, 1))

            End If

        Next

    End With

    With Sheets('商品')

        For i1 = 2 To .Range('B65536').End(xlUp).Row

            If Language = True Then

                If Left(.Cells(i1, 3).Value, Len(myStr)) = myStr Then

                    Me.ListBox1.AddItem .Cells(i1, 2).Value

                End If

            Else

                If Left(.Cells(i1, 3).Value, Len(myStr)) = myStr Then

                    Me.ListBox1.AddItem .Cells(i1, 2).Value

                End If

            End If

        Next

    End With

End Sub



Private Sub Worksheet_SelectionChange(ByVal Target As Range)   ’表格选择改变代码

If Target.Column <> 1 And Cells(Range('a999999').End(xlUp).Row, 1) = '' Then

Cells(Range('a999999').End(xlUp).Row + 1, 1).Select

Else

    Dim i As Integer

    If Target.Count = 1 And ActiveCell = '' Then

        If Target.Column = 1 And Target.Row > 1 Then

            With Me.sj

                .Visible = True

                .Top = Target.Top

                .Left = Target.Left

                .Width = Target.Width

                .Height = Target.Height

            End With

        End If

    End If

If Target.Count = 1 And ActiveCell = '' Then

        If Target.Column = 3 And Target.Row > 1 Then

If Cells(Target.Row, Target.Column - 2) <> '' Then

     With Me.TextBox1

                .Visible = True

         .Visible = True

                .Top = Target.Top

                .Left = Target.Left

                .Width = Target.Width

                .Height = Target.Height

                End With

With Me.ListBox1

  .Visible = True

.Top = Target.Top

 .Left = Target.Offset(0, 1).Left

 .Width = Target.Width * 3

 End With

    Else

    Exit Sub

    End If

    End If

    End If

    End If

End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

    ActiveCell.Value = ListBox1.Value

      Me.ListBox1.Clear

    Me.TextBox1 = ''

    Me.ListBox1.Visible = False

    Me.TextBox1.Visible = False

    Me.ListBox2.Visible = True

     Me.ListBox2.Clear

    For i11 = 2 To Sheets('商品').Range('B65536').End(xlUp).Row

    If Sheets('商品').Cells(i11, 2).Value = ActiveCell.Value Then

    ListBox2.AddItem Sheets('商品').Cells(i11, 1).Value & ' (  ' & Sheets('商品').Cells(i11, 4).Value

    End If

      Next

       ActiveCell.Offset(0, -1).Select

            With Me.ListBox2

             .Top = ActiveCell.Top

             .Left = ActiveCell.Offset(0, 1).Left

            End With

    End Sub


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
输入时逐步提示信息
VBA常用代码解析(第五十六讲)
【20180309】- Excel VBA智能提示,实现快速输入
单列数据联想录入
vba实现excel二级联动多选功能
巧用Excel VBA进行考试成绩登分录入
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服