excel - 如何用范围偏移替换选择?
问题描述
我有一个宏,它遍历文件上的挂起列表,并将数据从工作表复制到另一个工作表中的每个项目。
由于列表中有 200 个项目,并且大约有 200 次复制和粘贴操作,因此运行时间太长。
我正在尝试优化,删除复制和粘贴,然后选择。
在我的旧代码中,我使用范围和偏移量来重复一些操作,现在我不能使用它们,所以我不知道如何重写代码。
这是旧代码
Sheets("Motor").Select
Range("A140").Select
Selection.Copy
Sheets("Registros_Saidas_RS1").Select
MyRange.Offset(0, -3).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
这就是我正在尝试的
Sheets("Registros_Saidas_RS1").MyRange.Offset(0, -3).Value = Sheets("Motor").Range("A140").Value
我收到一个错误,我无法使用此方法。
解决方案
删除这样的选择
' acts on the ActiveWorkbook. Is that what you want?
Sheets("Motor").Range("A140").Copy
' requires MyRange to have been previously set to the required range
MyRange.Offset(0, -3).PasteSpecial _
Paste:=xlPasteValues, _
Operation:=xlNone, _
SkipBlanks :=False, _
Transpose:=True
然后你可以使用
MyRange.Offset(0, -3).Value = _
Sheets("Motor").Range("A140") _
.Resize(MyRange.Rows.Count, MyRange.Columns.Count).Value
推荐阅读
- angular - 是否可以在Angular6中的多个输入字段中计算字符
- reactjs - 放宽 React 类中的子项约束
- python - 超出python最大递归深度
- apache - 如何将语言功能的htaccess重定向与www合并到非www和http到https?浏览器返回:err_too_many_redirects
- python - Word To Vec with Spacy,词归类
- php - 在 laravel 异常处理程序中添加更多属性
- python-3.x - 我想在谷歌云中使用 python 函数列出组织中的所有资源
- python - 在 Tkinter 中是否有线程的替代方法?或者有没有办法在没有线程的情况下运行后台计时器?
- swift - Swift - 处理 Firebase 时间戳
- keras - 将模型保存为 cnn.model 或 cnn.h5 有什么区别?这些扩展有什么不同?