如何将可重用的多行/列表从一个excel工作表复制到另一个工作表上的数据库

如何将可重用的多行/列表从一个excel工作表复制到另一个工作表上的数据库,excel,vba,user-input,Excel,Vba,User Input,我对VBA编码相当陌生,我想知道是否有可能做到以下几点 我有一个可重用的输入工作表,其中包括一个包含24列和10行的表。我希望能够在另一个工作表上向数据库添加已完成的行数。 我设法找到了一些代码,允许单行更新,但多行更新不成功 如有任何建议,将不胜感激 谢谢 伊恩 代码如下所示: 子更新工作表() 如果结束 端接头 输入表随附示例代码,以响应注释: Dim lr as long, lc as long, lr2 as long with ThisWorkbook.Sheets("Source")

我对VBA编码相当陌生,我想知道是否有可能做到以下几点

我有一个可重用的输入工作表,其中包括一个包含24列和10行的表。我希望能够在另一个工作表上向数据库添加已完成的行数。 我设法找到了一些代码,允许单行更新,但多行更新不成功

如有任何建议,将不胜感激

谢谢

伊恩

代码如下所示:

子更新工作表()

如果结束

端接头


输入表随附

示例代码,以响应注释:

Dim lr as long, lc as long, lr2 as long
with ThisWorkbook.Sheets("Source")
    lr = .cells(.rows.count,1).end(xlup).row
    lc = .cells(1,.columns.count).end(xltoleft).column
    .range(.cells(2,1),.cells(lr,lc)).copy 
end with
with Workbooks("Database").Sheets("Dest")
    lr2 = .cells(.rows.count,1).end(xlup).row
    .cells(lr2+1,1).pastespecial xlvalues
end with

是的,这是可能的,请你分享你的代码,也许你的数据是如何布局的屏幕截图,使我们能够给出一个适当的答案?谢谢。您应该能够在工作簿1中复制整个新区域,然后将其复制到数据库工作簿中的单元格(lastrow+1,1)中。谢谢Cyril-您有我可以查看的示例代码吗?正如我所说,我对这一点还很陌生,所以我不能100%确定在哪一个项目中使用哪一个等circumstances@Iain仅供将来参考,您应该使用@username来提醒目标用户注意,尽管每个评论行只能有一个电话,否则用户很可能不知道您已经回复了他们。我碰巧查看了这个名字,因为这个名字看起来很熟悉,只是碰巧看到了你对我的评论。@Cyril,谢谢你!只是刚刚开始在这里发帖,所以还在学习诀窍。。。谢谢你的代码,我会看看我是否能把它做得很好,稍微修改一下,谢谢you@Iain所以这个问题还没有解决,你能接受答案吗,并指定您所做的修改?MOD是对工作表名称和单元格行/列引用的修改,以便将其复制到我的目标工作表上的特定区域。@Iain ahh,所以是标准内容。我不确定您是否要更改with语句或任何对象的工作方式。谢谢这对我来说可能是个新标准!但我已经到了我想。。。
Dim lr as long, lc as long, lr2 as long
with ThisWorkbook.Sheets("Source")
    lr = .cells(.rows.count,1).end(xlup).row
    lc = .cells(1,.columns.count).end(xltoleft).column
    .range(.cells(2,1),.cells(lr,lc)).copy 
end with
with Workbooks("Database").Sheets("Dest")
    lr2 = .cells(.rows.count,1).end(xlup).row
    .cells(lr2+1,1).pastespecial xlvalues
end with