为了让我开始使用VBA代码,我已经搜索了高低不同的东西,但是我一直在罢工。我有一些编写器块,可以使用任何帮助。
我正在尝试编写一个宏,它将在A列中找到多个特定值,并用该特定值替换该行中D列的内容。
基本上它将成为特定SKU的价格覆盖功能。 SKU填充在A列中,价格填充在D列中。它只有6个SKU,但我不能完全理解这个。
它必须是一个宏,因为我正在操作一个每天两次获取的文件。我使用一种主宏表来打开这个文件,然后操纵数据。
一如既往地感谢!我很感激帮助!
编辑添加:
这是我尝试过的东西,但我无法弄清楚如何为多个值做这个等等。
Sub Test()
Cells.Find(What:="26860", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
Range("D1704").Select
ActiveCell.FormulaR1C1 = "63.94"
Range("D1705").Select
End Sub
答案 0 :(得分:0)
这是一种在VBA中处理数据的非常优化的方法: 在这个例子中,我合并了A和D的值并将它放在E中。您只需更改应用程序的公式
即可Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Dim i As Integer
Dim cellsArray() As Variant
cellsArray = Range("A1:A20").value
Dim cells2Array() As Variant
cells2Array = Range("D1:D20").value
For i = LBound(cellsArray, 1) To UBound(cellsArray, 1)
' Put your code here
cellsArray(i,1) = cellsArray(i,1) & cells2Array(i,1)
Next i
Range("E1:E20").value = cellsArray
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
答案 1 :(得分:0)
没关系。我显然太累了,无法考虑编写代码,因为我无法记住最简单的解决方案:
For Each Cel In Range("A2:A3000")
If Cel.Value = "Number" Then Cel.Offset(0, 3).Value = "Othernumber"
Next
让人惊讶。那令人尴尬! = P