2014-02-19 113 views
0

您好,我需要vba编码方​​面的帮助。根据数据输入复制并粘贴动态范围

我有一个工作簿内的工作表,所有的日期与列标题看起来一样。

是否有办法弹出数据输入屏幕,并且用户输入第一列的日期以开始复制,然后提出另一个问题以复制最后一列的结束日期。

我希望Excel特定工作表中找到数据输入画面这两个日期,将信息复制,然后粘贴此信息到启动4行同列标题行34

(行会保持不变,复制和粘贴,列将根据用户输入而改变)

我可以录制一个宏来复制和粘贴,但我不知道如何使它变为动态。

希望有人在那里可能有一个想法。

+4

先尝试(录音可能是一个开始),然后回来一个更具体的问题,涉及您的编码试验和错误。 –

回答

0

您可以创建输入框来提示用户输入日期,然后将该值传递给定义的变量。

Dim start_date As Date 
start_date = InputBox("Please enter the start date:") 

用户输入的日期现在被保存在变量称为start_date。然后,您可以使用功能Find在工作表中搜索此日期的位置。例如

Dim x As Range 
With ThisWorkbook.ActiveSheet.UsedRange 
    Set x = .Find(start_date, LookIn:=xlValues) 
End With 

你可以在你希望它被搜索对工作表中的特定区域替换UsedRange。现在,x是包含用户输入日期的范围(或单元格)。

只需应用相同的概念来查找结束日期,然后将这些信息集成到复制粘贴例程中。

希望这将帮助!

相关问题