繁体   English   中英

将单元格范围插入另一张工作表

[英]Insert range of cells to another sheet

我有一个工作表,该工作表的范围是从扫描仪获取的数字(扫描仪在使用后将数字放在该范围内),具有诸如序列号和日期(从B9到C20)的信息,以及一个表示零件编号的单元格(L2) 。 使用按钮(带有宏的打印按钮)打印此数据后,将使用一个用于擦除该范围数据的按钮。 我想做的是在擦除按钮中有一个宏,每次按下该按钮时,该宏就会将数据从单元格和L2的范围复制到另一张纸上,并为此创建一个数据库。 以下是带有信息的表。 在此处输入图片说明

这是我当前的代码:

Sub Test()
Dim the_sheet As Worksheet
Dim table_list_object As ListObject
Dim table_object_row As ListRow

Set the_sheet = Sheets("Base de datos")


Set table_list_object = Sheets("Base de datos").ListObjects("table1")


Set table_object_row = table_list_object.ListRows.Add


last_row_with_data = the_sheet.Range("A65536").End(xlUp).Row

the_sheet.Range("A" & last_row_with_data) = ActiveSheet.Range("B9:B20")

the_sheet.Range("B" & last_row_with_data) = ActiveSheet.Range("C9:C20")

' the_sheet.Range("C" & last_row_with_data) = ActiveSheet.Range("L2")

' the_sheet.Range("D" & last_row_with_data) = ActiveSheet.Range("L3")



End Sub

您可能需要修改此设置以适合您的需求,因为我不确定自己的标准是什么,但这应该可以帮助您入门! 首先,创建一个名为“数据库”的工作表。 我假设您的复印范围是静态的。 如果范围不是静态的,则可以“取消注释”代码的“ RCount”部分,并进行修改以设置动态复制范围。

当前,该代码将复制您的范围(B9:M20),并将其粘贴到Col A上最后一个可用行的名为“数据库”的新表上。

为了清除表格,我将在标题下方创建另一个宏(您可以只记录一个),标题为“ Macro_Title”。 在“结束子”之前

    Call Macro_Title

Public Sub Wow()

'Declare Variables
Dim wsOrigin As Worksheet
Dim wsDataBase As Worksheet
Set wsOrigin = Thisworkbook.Sheets("Base de datos")
Set wsDataBase = Thisworkbook.Sheets("Database")

Application.ScreenUpdating = False

'Copy/Special Paste Desired Data
Dim COPYME As Range
'Dim RCount As Integer
Dim RCount2 As Integer

'RCount = wsOrigin.Range("L" & wsOrigin.Rows.Count).End(xlUp).Row
RCount2 = wsDataBase.Range("A" & wsDataBase.Rows.Count).End(xlUp).Row

Set COPYME = wsOrigin.Range("B9:M20))
COPYME.Copy

wsDataBase.Range("A" & RCount2 + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Application.ScreenUpdating = True

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM