Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel vba数据输入编码_Excel_Vba_Forms - Fatal编程技术网

excel vba数据输入编码

excel vba数据输入编码,excel,vba,forms,Excel,Vba,Forms,我是新来的。我有一个Excel文件和两张表格表1是数据输入,而表2是数据库。在sheet1中,我有4个变量:Id,Name,Old,Email。我想使用ActiveX控件(命令按钮) 我想当我在sheet1中填充数据并按下按钮时,它应该将数据复制到sheet2(下图显示sheet2),如果我想填充另一个数据,它应该向下两行以获取新数据(如图中的第9行)。谢谢你的帮助 Private子命令按钮1\u单击() Application.ScreenUpdating=False 暗淡无光 iRow=工

我是新来的。我有一个Excel文件和两张表格<代码>表1是数据输入,而
表2
是数据库。在
sheet1
中,我有4个变量:
Id
Name
Old
Email
。我想使用ActiveX控件(命令按钮)

我想当我在
sheet1
中填充数据并按下按钮时,它应该将数据复制到
sheet2
(下图显示
sheet2
),如果我想填充另一个数据,它应该向下两行以获取新数据(如图中的第9行)。谢谢你的帮助

Private子命令按钮1\u单击()
Application.ScreenUpdating=False
暗淡无光
iRow=工作表(2)。单元格(行数,“A”)。结束(xlUp)。行数+1
如果iRow 5,则iRow=iRow+2'如果不是第一个数据集,则添加两行
'...

好的,请在你的问题中加入你的尝试,并解释你在哪里遇到了麻烦。@braX我将我的代码添加到问题
iRow=Sheets(2)。Cells(Rows.Count,“A”)。End(xlUp)。Row+1
然后
如果iRow 5,那么iRow=iRow+2
注意
Sheet2
不一定是
Sheets(2)
。确保您了解
工作表(2)
(位于选项卡位置2的工作表)与
工作表(“工作表2”)
(选项卡名称为“工作表2”)与
工作表2
(VBA名称为“工作表2”)之间的区别。它们可以是3个完全不同的工作表,因为它们很容易移动,并且存在两个没有任何链接的命名系统(选项卡名称和VBA名称)。@TimWilliams it显示错误消息:编译错误:预期语句结束感谢您的回答,但对于第一个数据集,它是开始2行向下,我的意思是,它应该从第5行开始,但它从第7行开始
Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    
    Dim iRow As Long  
    iRow = Sheets(2).Range("A1048576").End(xlUp).Row + 1
     
    With ThisWorkbook.Sheets(2)
       .Range("A" & iRow).Value = Sheet1.Range("A5").Value
       .Range("A" & iRow + 1).Value = Sheet1.Range("A6").Value
       .Range("B" & iRow).Value = Sheet1.Range("B5").Value
       .Range("B" & iRow + 1).Value = Sheet1.Range("B6").Value
       .Range("C" & iRow).Value = Sheet1.Range("C5").Value
       .Range("C" & iRow + 1).Value = Sheet1.Range("C6").Value
       .Range("D" & iRow).Value = Sheet1.Range("D5").Value
       .Range("D" & iRow + 1).Value = Sheet1.Range("D5").Value          
    End With

    Call Reset
    Application.ScreenUpdating = True
End Sub