excel中VBA的应用
我将VBA与一个应用程序结合使用,通过电子表格中的一些操作自动化excel。但是,我不知道如何以编程方式复制单元格 我尝试使用以下代码:excel中VBA的应用,vba,excel,Vba,Excel,我将VBA与一个应用程序结合使用,通过电子表格中的一些操作自动化excel。但是,我不知道如何以编程方式复制单元格 我尝试使用以下代码: Form1.ex.Range(r1.Text + ":" + r1x.Text).Activate() Form1.ex.ActiveCell.Copy(Destination:=Form1.ex.Range(c1.Text + ":" + c2.Text)) 其中,r1是我从中复制的,然后r1x包含r1和r1x的文本。它基本上选择了一系列的细胞,然后打算复
Form1.ex.Range(r1.Text + ":" + r1x.Text).Activate()
Form1.ex.ActiveCell.Copy(Destination:=Form1.ex.Range(c1.Text + ":" + c2.Text))
其中,r1
是我从中复制的,然后r1x
包含r1
和r1x
的文本。它基本上选择了一系列的细胞,然后打算复制它们,但效果并不好
如何修复此代码以将单元格从一个位置复制到另一个位置?给你,这是如何进行复制:
'Copy range A1:A9 from Sheet1 to Sheet2 A1 :
ThisWorkbook.Sheets("Sheet1").Range("A1" & ":" & "A9").Copy _
Destination:=ThisWorkbook.Sheets("Sheet2").Range("A1")
'With your references :
Form1.ex.Range(r1.Text & ":" & r1x.Text).Copy _
Destination:=Form1.ex.Range(c1.Text)
在您的示例中,您使用Form1和ex,如果它们分别是工作簿和工作表,则代码可以工作,但如果是UserForm,则不会工作
不要使用
+
连接字符串,这是运算符&
我在您的问题的注释中添加了您的代码和解释,还整理了您的问题。看看我是如何格式化的代码,因为你说你以前有问题,这也是一个有用的资源。如果你能解释一下这段代码“工作不好”,这将有助于任何试图回答你的问题的人。“r1x包含r1和r1x的文本。”-你在这里是什么意思?啊,似乎是超偏见的人把它编辑错了,但无论如何谢谢:3 btw等级,看看我会怎么解释我需要复制8或9个单元格,所以我决定创建第一个单元格和最后一个单元格,这样就很容易复制,例如:A1:A9而不是A1、A2、A3等。。r1是第一个单元格(A1)r1x是最后一个单元格(A9),所以我想复制所有这些(A1到A9)范围r1、r1x、c1和c2是什么?这些是你创造的形状吗?它们是细胞吗?因为如果它们是单元格,那么在我预期的.Formula或.Value时,您正在使用.Text函数。我的建议是将变量设置为与电子表格中的特定单元格相等,然后对其进行专门命名,以便能够在代码中引用它们,而不管插入列/行时这些单元格如何移动。