Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1958|回复: 13

[已解决]求助···大侠帮帮忙·······

[复制链接]
发表于 2013-4-16 14:11 | 显示全部楼层 |阅读模式
1.点击添加按钮后   窗体中   客户编号:根据当期日期+001自动生成(累加)
2.点击查询按钮后   窗体中   输入编号或者姓名后  把相对应的信息自动显示到textbox中。
谢谢····
最佳答案
2013-4-16 14:51
添加按钮代码略改下,数字超长的问题
  1. Private Sub 添加确认_Click()
  2.     Dim r As Long
  3.     Dim c As Range
  4.     If xm.Text = "" Then MsgBox "姓名为空": Exit Sub
  5.     With Sheets("客户基本信息")
  6.         Set c = .[c:c].Find(xm.Text, , , 1)
  7.         If Not c Is Nothing Then
  8.             If MsgBox("用户已添加,是否继续添加!", vbInformation + vbYesNo, "系统提示") = vbNo Then Exit Sub
  9.         End If
  10.         r = .Range("A1").End(xlDown).Row + 1
  11.         .Cells(r, 1) = rq.Text
  12.         .Cells(r, 2) = "'" & khbh.Text
  13.         .Cells(r, 3) = xm.Text
  14.         .Cells(r, 4) = xb.Text
  15.         .Cells(r, 5) = nl.Text
  16.         .Cells(r, 6) = sr.Text
  17.         .Cells(r, 7) = dh.Text
  18.         .Cells(r, 8) = zy.List
  19.         .Cells(r, 9) = dz.Text
  20.     End With
  21. End Sub
复制代码

客户资料.zip

50.25 KB, 下载次数: 7

 楼主| 发表于 2013-4-16 14:15 | 显示全部楼层
板凳先坐····自己顶起··························
回复

使用道具 举报

 楼主| 发表于 2013-4-16 14:24 | 显示全部楼层
大侠··  在线求姐哟····························
回复

使用道具 举报

发表于 2013-4-16 14:43 | 显示全部楼层
具体哪个窗体呀。另外,点了添加后,不管是操作完否,最好是给个提示出来,不然我还以为你按钮没有写代码了。
回复

使用道具 举报

发表于 2013-4-16 14:49 | 显示全部楼层
  1. Private Sub UserForm_Initialize()
  2.   rq.Text = Year(Now) & Format(Month(Now), "00") & Format(Day(Now), "000") 'textbox1.text自动显示当前日期
  3.   zy.List() = Array("儿童", "学生", "成人", "老人")
  4.   khbh.Text = rq.Text & Format(WorksheetFunction.CountIf(Range("a:a"), rq.Text) + 1, "000")
  5. End Sub
复制代码
客户编号
回复

使用道具 举报

发表于 2013-4-16 14:51 | 显示全部楼层    本楼为最佳答案   
添加按钮代码略改下,数字超长的问题
  1. Private Sub 添加确认_Click()
  2.     Dim r As Long
  3.     Dim c As Range
  4.     If xm.Text = "" Then MsgBox "姓名为空": Exit Sub
  5.     With Sheets("客户基本信息")
  6.         Set c = .[c:c].Find(xm.Text, , , 1)
  7.         If Not c Is Nothing Then
  8.             If MsgBox("用户已添加,是否继续添加!", vbInformation + vbYesNo, "系统提示") = vbNo Then Exit Sub
  9.         End If
  10.         r = .Range("A1").End(xlDown).Row + 1
  11.         .Cells(r, 1) = rq.Text
  12.         .Cells(r, 2) = "'" & khbh.Text
  13.         .Cells(r, 3) = xm.Text
  14.         .Cells(r, 4) = xb.Text
  15.         .Cells(r, 5) = nl.Text
  16.         .Cells(r, 6) = sr.Text
  17.         .Cells(r, 7) = dh.Text
  18.         .Cells(r, 8) = zy.List
  19.         .Cells(r, 9) = dz.Text
  20.     End With
  21. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2013-4-16 15:13 | 显示全部楼层
hwc2ycy 发表于 2013-4-16 14:51
添加按钮代码略改下,数字超长的问题

谢谢····懂了········非常3Q
回复

使用道具 举报

发表于 2013-4-16 15:14 | 显示全部楼层
第2个问题,你写下序号和姓名的CHANGE事件吧。
回复

使用道具 举报

发表于 2013-4-16 15:32 | 显示全部楼层
如果同时要实现输入姓名或编号来自动显示的话,用CHANGE不太好,会产生连锁反应,死循环。
可以考虑用EXIT事件
Private Sub TextBox3_Change()
    Dim rg As Range
    On Error Resume Next
    If Len(Me.TextBox3.Text) = 0 Then Exit Sub
    With Sheets("客户基本信息")
        Set rg = Columns("b").Find(what:=Me.TextBox3.Text)
        If rg Is Nothing Then Exit Sub
        Me.TextBox4.Text = rg.Offset(, 1).Value
        Me.TextBox2.Text = rg.Offset(, 5).Value
    End With
End Sub
回复

使用道具 举报

 楼主| 发表于 2013-4-16 16:35 | 显示全部楼层
hwc2ycy 发表于 2013-4-16 15:32
如果同时要实现输入姓名或编号来自动显示的话,用CHANGE不太好,会产生连锁反应,死循环。
可以考虑用EXIT ...

首先感谢hwc2ycy老师您的帮助
希望能帮我在写写:
1.查询窗体  根据客户编号、客户姓名、电话,及时间段进行查询在ListView1控件中显示。(数据来源"客户基本信息")
2.在ListView1控件中双击需要的结果后,显示到"查询结果"窗体
如果有 验光记录或配镜记录则显示(数据来源于"sheet验光数据","sheet销售数据")
3.根据需求   添加验光数据及销售数据   保存到"sheet验光数据","sheet销售数据"表中


客户资料.zip

58.18 KB, 下载次数: 1

能再帮我看看吗?

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 22:10 , Processed in 0.358756 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表