根据条件复制单元格并通过覆盖其他工作表中的单元格进行粘贴

凯什

我试图根据日期创建VBA代码。这是我的信息:

表格1:我有一张表格,该表格从A1单元格开始,一直到G29。单元格B2具有日期,该日期已使用Excel中的TODAY选项进行了编码。

现在该表必须每天进行更新,但是一天结束后,我要保存该表的内容并在第二天清除工作表1。我想将所有内容保存在一个隐藏的工作表Sheet 2中。

目前,我已经设法将所有内容复制并粘贴到工作表2中,然后激活表格下方的单元格,以便第二天就可以复制并粘贴它了。

我遇到的问题是,每当我运行宏时,它都会将表格复制并粘贴到工作表2中已经存在的表格下方的所选单元格中。因此,对于任何特定日期,我可能有3、4、5,同一张桌子的任何变体,都在彼此下面。

因此,我想告诉我的VBA代码,如果单元格B2(工作表1)中的值为x,而工作表2中相应日期单元格中的值相同,则将其复制并粘贴到这些单元格中。

我知道怎么做最后一点,(现在)我想帮忙弄清楚的是,我如何告诉它进行特定的搜索并激活两张纸上的单元格,同时要记住,以后需要保持一般性一个日期,工作表2中的下一个日期单元格将在B2下方大约31个单元格,然后在其下方31个单元格,依此类推。

这是我当前的宏:

Sub Macro1()
'
' Macro1 Macro
'
' Acceso directo: CTRL+h
'
    Range("A1:G29").Select
    Selection.Copy
    Sheets("Hoja2").Select
    Range("A1").Select
    ActiveSheet.Paste
    Range("A1").Select
    ActiveCell.Offset(31, 0).Select

End Sub

这将复制并粘贴并选择下面的单元格。但是我正在努力使Excel根据日期粘贴到特定的单元格上。

我希望这是有道理的。如果有人有任何疑问,请告诉我!

L.Dutch-恢复莫妮卡

您要检查源表中的日期是否已存在于目标表中。如果是这样,请将29行表格粘贴在相应的范围内,否则将其粘贴在底部。以下应该工作:

Sub Macro1()

target = Cells("B2")
Range("A1:G29").Copy
end = Sheets("Hoja2").Cells(1048576, 2).End(xlUp).row 'check the last filled in row
tables = end / 29 'counts how many tables are already pasted in the sheet
for i = 1 to tables
    index = (i-1)*29 + 2 'row index where the date is written
    if Sheets("Hoja2").Cells("B" & index) = target then 'check if the date corresponds
        Sheets("Hoja2").Range("A" & index - 1).Paste
        Range("A" & index).Select
        ActiveCell.Offset(31, 0).Select
        exit sub
    end if
next i
'the following lines are skipped if the for loop pastes the table
Sheets("Hoja2").Range("A" & end + 1).Paste     
Range("A" & index).Select
ActiveCell.Offset(31, 0).Select

End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

复制并粘贴新表中的行,并根据其他单元格值更改单元格值(月)

Excel 2010:根据条件从工作表2>工作表1复制单元格块

不能从其他工作表复制单元格

如何根据条件获取其他工作表中的单元格值?

双击复制单元格,然后自动粘贴到另一张纸上的其他单元格中

搜索工作表并复制单元格值

Excel VBA-如果单元格值满足条件,则在工作表之间复制单元格

从范围复制单元格值并将其粘贴到另一个工作表的单行中

Excel:仅当单元格在其他列中匹配时才可以复制单元格吗?

如何根据单元格值将数据复制到其他工作表

如何通过在其他单元格或工作表中输入值来重复更改单元格值?

VBA-从A和B列复制单元格并粘贴到新表中

通过VBA在Excel中复制单元格公式

如何引用其他工作表中的单元格

根据条件复制/粘贴单元格范围 x 次

将一个列表中的值与不同工作表上的其他值匹配并复制单个单元格 GAS

使用单元格编号复制和粘贴工作表

根据单元格值将工作簿中的工作表复制并粘贴到不同的工作簿

根据其他单元格的值将SQL查询的结果粘贴到特定的单元格中

Excel VBA-根据其他工作表中的事件更改单元格颜色

如何使用输入框复制单元格范围并粘贴到新创建的工作表

根据行数据复制特定单元格并粘贴在特定工作表上

VBA复制和粘贴仅根据活动工作表选择2个单元格

根据其他匹配的单元格将值复制到一个单元格中

VBA代码可根据条件复制特定列中的单元格并将其粘贴(值)到另一张工作表中特定列中的单元格

根据条件复制特定值并粘贴到 Google Sheet 中另一个工作表的特定单元格中

根据其他单元格值从其他工作表获取值

如何通过VBA根据其他单元格值更改单元格的背景颜色

如果单元格只有空白,如何从另一张工作表复制单元格