excel - 要在动态范围内粘贴的宏
问题描述
我需要将数据表从一个工作簿复制到另一个工作簿。我想出了如何设置复制范围,但正在努力解决动态的目标范围。
为了更好地理解;复制文档包括一组按日期排序的值。有时数据集将从 1 月 1 日开始,有时以 5 月 5 日或任何其他随机日期开始。
目标文档是从 1 月 1 日到 12 月 31 日的固定日期表,数据需要粘贴到正确的行中(根据匹配日期)。列是固定的。
我在目标文档中有一个 MATCH 公式来交叉检查粘贴范围应该从哪一行开始,但不知道如何将它与已知列结合起来。
现在我有:
Dim x As Workbook
Dim y As Workbook
Set x = Workbooks.Open("PATHWAY 1")
Set y = ThisWorkbook
x.Sheets("2").Range("B1:F1").End(xlDown).Copy
'Now, paste to y worksheet:
y.Sheets("R2").Range.Cells("2,[Helper.xlsb]R2!$H$2").PasteSpecial xlPasteValues
解决方案
也许这就是你要找的。
dim m as variant
x.Sheets("2").Range("B1:F1").End(xlDown).Copy
m = application.match(dateserial(2018, 10, 31), y.range("A:A"), 0)
if not iserror(m) then
y.Sheets("R2").Cells(m, "B").PasteSpecial xlPasteValues
end if
推荐阅读
- python - VSCode Python package inspection failure
- visual-studio-code - Visual Studio Code 中的 Jupyter 笔记本不使用活动虚拟环境
- php - 使用 facebook webdriver 清除 textarea
- reactjs - 让用户决定一个页面中有多少项
- python - 使用数据科学库运行 Python 代码时的奇怪问题
- javascript - React - 如何防止来自子组件的点击事件
- itext - 连接具有不同一致性级别的多个 PDF/A
- clojure - 如何记录 defmethod 函数?
- r - 为不止一个独特的价值保持前后的行动
- postgresql - 使用带有自定义分隔符的 postgres 按字符大小复制文本文件