当前位置: 首页 > 知识库问答 >
问题:

修复我的宏以复制一个范围到下一个空白列?

萧英睿
2023-03-14
    null

谢谢你的帮助,我现在卡住了。

Sub TestCopyToDB()

    Application.ScreenUpdating = False
    Dim copySheet As Worksheet
    Dim pasteSheet As Worksheet

    Set copySheet = Worksheets("sheet1")
    Set pasteSheet = Worksheets("sheet2")

    copySheet.Range("M1:M15").Copy
    pasteSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Application.ScreenUpdating = True

End Sub

共有1个答案

羊舌富
2023-03-14

cells方法有两个参数:行和列,

Cells(1,1)   '<~~ equivalent to cell "A1"
Cells(1,3)   '<~~ equivalent to cell "C1"
Cells(10,13) '<~~ equivalent to cell "M10"

offset方法的工作原理类似,有两个参数:row_offset和column_offset,因此:

.Offset(1,1)   '<~~ returns the cell one row below, and one column to the right
.Offset(-1, 3) '<~~ returns the cell one row above, and 3 columns to the right

进行一些调整,并将.end(xlUp)(对于行)更改为.end(xlToLeft),得到以下结果:

With pasteSheet
    .Cells(1, .Columns.Count).End(xlToLeft).Offset(0,1).PasteSpecial _
        Paste:=xlPasteValues, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
End With
 类似资料:
  • 在应用程序脚本中是否有一种简单的方法可以查找某个范围内的下一个空行,例如,我希望如下所示: 返回B2:D范围内的下一行空行,以便返回第4行 其他行(如A行 我正在尝试从另一个工作表(或选项卡)写入下一个空行,该工作表有一个供用户输入数据的输入区域,然后点击按钮,数据将添加到目标页上的空行(数据的第一行!B2:D)

  • 使用Google Sheets,我试图制作一个复制按钮,一旦点击它,就应该启动脚本代码,以便复制特定列中的一些值(例如,从特定行开始的20个特定单元格),并将它们粘贴到下一个空列中另一张纸(纸2)从特定的一行开始。 每次按下按钮,它都会将结果复制到工作表2中的下一个空列,这样就不会复制到上一个粘贴的结果上。 表1中这些单元格的值或文本:C4、C5、C6、C7、C8、C9、C10、C11、C12、C

  • 我在工作簿中的工作表上有一个按钮,工作簿中有一个数据透视表,名为“保修模板.xlsm”。我希望该按钮复制从A5开始的第一列数据,并将该列粘贴到另一个名为“QA Matrix Template.xlsm”的工作簿中。我希望复制的数据在列的最后一个空白行结束,我希望粘贴数据的范围也粘贴在从D12开始的第一个空白行上。 我得到下标错误:'1004',我不知道为什么。它与我的&变量有关。如果我设置静态范围

  • 我来自VB背景,在实现工作表的脚本解决方案时遇到了一些困难,我想这个函数相当基本,但还不确定如何在JS中表达它。目标是循环遍历一个范围内的每个单元格(工作表1,Q3: Q1000),获取该范围内单元格具有值“TRUE”的行号,复制/剪切工作表1上符合该限定条件的每行的全部内容(或者简单地存储这些值并跳过复制/粘贴步骤),将这些值粘贴到单独工作表(Sheet2)上的第一个未使用的行,然后删除Shee

  • 我想从工作簿中复制一个范围,并将其转置到当前工作表中。 工作簿(“库\document\book1.xlsx”)。工作表(“sheet1”)。范围(“A1:A5”)。复制