方法:
1、在SHEET1中调出”窗体“。鼠标点菜单“视图”——“工具栏”——“窗体”。
2、用鼠标右键点窗体中的“按钮”,这时鼠标变为+字型,按住鼠标左键在工作表中合适位置拖拉。出现如图画面。
3、点击“新建”,调出VBA编辑界面,如图,在SUB与ANDSUB之间输入Sheet1.[a1] = Sheet2.Range("a1").Value。
4、退出VBA编辑状态,返回工作表1。
有兴趣的话,我可以给你设计一个窗体,可以列出数据总行数,当前行数,具体数值等。
Sub aa()
Range("b1").Font.ColorIndex = 2
[b1] = [b1] + 1
Set y = [b1]
x = Application.WorksheetFunction.CountA(Sheets("sheet2").Range("a:a"))
[A1] = Sheets("sheet2").Cells(y, 1)
If x = [b1] Then
MsgBox "无数据"
[b1] = ""
End If
End Sub
以上只是按照您上面所提要求编的例子,如果有其它条件限制,请自动修改,但原理应该是差不多的.
补充:加上前面那句去....注意看清代码的逻辑...然后你就能明白,B1单元格是做什么用的....
试试这段代码吧,这个是根据Sheet2活动单元格来给Sheet1 A1赋值,不需要额外单元格记录点击次数。
Private Sub CommandButton1_Click()
Dim m
Application.ScreenUpdating = False
Sheet2.Activate
m = ActiveCell.Row
If (ActiveCell <> "") And m <= Sheet2.UsedRange.Rows.Count Then
Sheet1.[A1] = Sheet2.Cells(m, 1)
m = m + 1
Sheet2.Cells(m, 1).Select
ElseIf (ActiveCell <> "") Then
MsgBox "无数据"
Else: MsgBox "Sheet2表中活动单元格在数据区域外,请重新选择"
End If
Sheet1.Select
Application.ScreenUpdating = True
End Sub