excel - VBA 在一台机器上执行,但不在另一台机器上执行
问题描述
我创建了一系列宏来创建每日报告。其中一个宏是一个简单的单行,它将数据从一个工作表复制到同一工作簿中的另一个工作表。问题是它可以在一台机器上运行,但不能在另一台机器上运行。这些机器都是基于英特尔的机器,运行相同的操作系统版本和相同的 MS Office 版本以及完全相同的数据集。唯一的区别是一个是 32 位机器,而另一个是 64 位。想知道是否有人有任何想法来解决这个问题,或者可以阐明为什么会发生这种情况。脚本如下所示:
Sub Copy_S3ToS1()
'
' Select everything from Sheet3 and copy to Sheet1
'
ActiveSheet.UsedRange.Copy Destination:=Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Offset(2)
'
End Sub
看 - 很简单。我不明白为什么它可以在一台机器上运行,而不能在另一台机器上运行。
解决方案
我通过分离复制和粘贴功能并添加延迟计时器解决了这个问题。
Sub Copy_S3ToS1()
'
' Select everything from Sheet3 and copy to Sheet1
'
Sheets("Sheet3").Select
ActiveSheet.UsedRange.Copy
Application.Wait (Now + TimeValue("0:00:03"))
Sheets("Sheet1").Select
ActiveCell.SpecialCells(xlLastCell).Select
Cells(ActiveCell.Row, "A").Activate
SendKeys "{down}"
ActiveSheet.Paste
End Sub
推荐阅读
- java - Java中使用JGAP库的遗传算法
- c - 如何在 C 中多次“重用”一个线程?
- vb.net - 泛型函数内部忽略重载
- flutter - 我怎样才能从地图上收集所有的公斤值
- javascript - 有没有办法在页面加载后包含的元素上使用脚本?
- python - 内核未在 Jupyter Lab 中连接
- css - 如何防止从模态进一步向下滚动?
- angular - 如何在Angular中添加表单元素并动态获取数据?
- android - Visual Studio Xamarin Forms 项目未在 bin/debug/netstandard2.0 目录下创建项目 dll 文件
- html - 当我将 css 链接到 html 时,为什么没有显示某些 css 样式?