【发布时间】:2020-06-19 18:07:27
【问题描述】:
此代码将进入工作表并将单元格切换到某个函数,该函数链接到我要复制的范围。然后它将在特定单元格的另一张纸上粘贴值。每次复制和粘贴时,我都会更改 ActiveCell(第 6 行)。此代码不等待将被复制的单元格进行计算。因此,我的整个工作表中有相同的单元格值。任何帮助都会很棒:) 我尝试了“Application.Calculate”,但没有奏效。这段代码继续复制和粘贴 100 个不同的股票代码,我包括了五个系列的代码,但它们继续记录每个股票的价格。
Sheets("Investing").Select
ActiveWindow.SmallScroll Down:=21
Sheets("Homepage").Select
Range("J2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=Investing!R[268]C[-9]"
Range("J3").Select
Sheets("Investing").Select
ActiveWindow.SmallScroll Down:=-12
Range("A249:B260").Select
Selection.Copy
Sheets("Daily Strategies").Select
Range("E5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Homepage").Select
Range("J2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=Investing!R[269]C[-9]"
Range("J3").Select
Sheets("Investing").Select
Range("A249:B260").Select
Selection.Copy
Range("D283").Select
Sheets("Daily Strategies").Select
Range("G5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Homepage").Select
Range("J2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=Investing!R[270]C[-9]"
Range("J3").Select
Sheets("Investing").Select
Range("A249:B260").Select
Selection.Copy
Sheets("Daily Strategies").Select
Range("I5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Homepage").Select
Range("J2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=Investing!R[271]C[-9]"
Range("J3").Select
Sheets("Investing").Select
Range("A249:B260").Select
Selection.Copy
Sheets("Daily Strategies").Select
Range("K5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Homepage").Select
Range("J2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=Investing!R[272]C[-9]"
Range("J3").Select
Sheets("Investing").Select
Range("A249:B260").Select
Selection.Copy
Sheets("Daily Strategies").Select
Range("M5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
我
【问题讨论】:
-
This code isn't waiting for the cells that will be copied to calculate- 你的calculation mode是什么? -
代码将公式
=Investing!A270写入工作表Homepage中的单元格J2。然后它将值从工作表Investing中的范围A249:B260复制到工作表Daily Strategies中的范围E5:F16。你期待它做什么?未计算单元格在哪里? “某些功能”和“整张纸”是什么意思?尝试在您的帖子中添加其余代码和一些说明。您的帖子下方有一个edit 按钮。 -
@VBasic2008 我为您更新了我的系列我不想包含整个代码,因为它是所有相同的过程,只是将不同的方程拉入 J2 并复制然后粘贴该方程计算的内容。
-
不,不,不...您必须在宏记录器之后清理您的代码。先阅读How to avoid select 和How to copy without clipboard
标签: excel vba cell copy-paste calculation