复制的Activecell的地方,在Excel中使用VBA数据库表的范围
-
示例代码将复制到名称为Sheet2的数据库表中。
-
每次您运行一个子程序时,单元格都会被放置在最后一行包含数据的下方,或者放在最后一列之后的sheet2中的数据之后。
-
对于每个示例,都有一个宏进行普通复制,而宏仅复制值。
-
Example子代码使用以下功能(如果没有这些功能,宏将无法使用)。
Sub CopyToActiveCell() Dim sourceRange As Range Dim destrange As Range If Selection.Cells.Count > 1 Then Exit Sub Set sourceRange = Sheets("Sheet1").Range("A1:C10") Set destrange = ActiveCell sourceRange.Copy destrange End Sub Sub CopyToActiveCellValues() Dim sourceRange As Range Dim destrange As Range If Selection.Cells.Count > 1 Then Exit Sub Set sourceRange = Sheets("Sheet1").Range("A1:C10") With sourceRange Set destrange = ActiveCell.Resize _ (.Rows.Count, .Columns.Count) End With destrange.Value = sourceRange.Value End Sub Function LastRow(sh As Worksheet) On Error Resume Next LastRow = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row On Error GoTo 0 End Function Function Lastcol(sh As Worksheet) On Error Resume Next Lastcol = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column On Error GoTo 0 End Function