excel - 将公式从活动单元格拖到右侧,其中行是可变的,但列是设置的
问题描述
我正在尝试将公式从 C 列中的单元格直接复制到 F 列。我总是想从 C 列复制公式并拖动到 F 列,但是该行应由活动单元格确定。拖动公式后,我想将这些公式向下拖动到 B 列中包含数据的最后一行。
到目前为止,我录制的宏中的 VBA 如下所示:
ActiveCell.FormulaR1C1 = _
"=INDEX('Item Setup'!C2:C40,MATCH(R[-8]C2,'Item Setup'!C2,0),MATCH(R4C,'Item Setup'!R4C2:R4C40,0))"
Range("C13").Select
Selection.AutoFill Destination:=Range("C13:F13"), Type:=xlFillDefault
Dim lastRow As Long
lastRow = Range("B" & Rows.Count).End(xlUp).Row
Range("C13:F13").AutoFill Destination:=Range("C13:F" & lastRow)
Range("C13:F13").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
解决方案
认为您可以一次性完成此操作,并且无需使用 Select 或 Autofill。
通常不建议将宏基于活动单元格。
Sub x()
Dim lastRow As Long
lastRow = Range("B" & Rows.Count).End(xlUp).Row
With Range(Cells(ActiveCell.Row, "C"), Cells(lastRow, "F"))
.FormulaR1C1 = _
"=INDEX('Item Setup'!C2:C40,MATCH(R[-8]C2,'Item Setup'!C2,0),MATCH(R4C,'Item Setup'!R4C2:R4C40,0))"
.Value = .Value
End With
End Sub
推荐阅读
- javascript - Html:从数组中选择随机字符串并延迟一一显示
- powershell - 是否有一种“软方式”可以关闭 PowerShell 中的进程?
- c# - 统一:Gfx.UploadTexture 异步
- android - Azure devops 管道构建和部署我的原生 Android 应用程序 Google Play 商店或 App Center 作为 App Bundle
- sql-server - SPSS变量宽度为零
- pentaho - Ubuntu 18 上的 Pentaho PDI
- mysql - MySql (phpmyadmin) JSON Default Value without '
- python - 以编程方式重新组织熊猫切片
- c - 请解释这个C代码有什么问题?
- python - 如何解决“Runtime.ImportModuleError”AWS lambda 中没有名为“mysql”的模块?