我使用以下内容在Excel中将一行数据插入到另一个基于选择框的工作表中,所有工作都按原样应用,直到我向工作表添加更多信息,然后它将数据添加到下一个可用的清除行总是在页面的最底部,我需要在页面中间添加一个设置位置。
我希望Start点是一个特定的Cell,而不是A列中第一个可用的Cell是空的,是否可以设置一个特定的起始点来添加数据,如果在de中的Selection框中也可以删除它 - 请选择?
Sub CheckboxClicked()
Dim cel As Range, dest As Range, rw As Range, targ As Range
Set cel = ActiveSheet.Shapes(Application.Caller).TopLeftCell
Set rw = Intersect(cel.EntireRow, Range("B:H")) 'This is the number of columns to be coppied over to the RAMs work sheet
'This is the destination and offset based on cell A1
With Worksheets("RAMS")
Set dest = .Columns("A").Find(Application.Caller)
If dest Is Nothing Then
If cel.Value = True Then
Set dest = .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
dest.Offset(0, 1).Resize(1, rw.Columns.Count).Value = rw.Value
'dest.Offset(0, rw.Columns.Count + 1).Value = Now 'Adds the date and time that the RAMS were added (Commented out)
dest.Value = Application.Caller
End If
Else
If cel.Value = False Then dest.EntireRow.Delete
End If
End With
End Sub
答案 0 :(得分:1)
设置dest拾取最后一个填充的单元格,然后向下移动1个单元格(偏移量)
Set dest = .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
如果需要特定单元格,可以替换偏移线
Set dest = .cells(1,1)
您可以根据要粘贴值的确切位置替换“cells(row,col)”。