将值从一张图纸增加到另一张图纸VBA

  • 本文关键字:一张 VBA 增加 excel vba
  • 更新时间 :
  • 英文 :


我有一张名为Sheet3的表,另一张是Sheet4。表3:A列标题是产品类型,B列是它们的数量,表4具有相同的列标题。产品类型和数量。但当我在Sheet3中运行"低于宏"时,有时它们会正确地将值添加到第4张,有时它们不能正常工作。

Sub Increase_Value()
Sheets("Sheet3").Select
Cells.Find(What:=Sheet4.Range("A2").Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Sheets("Sheet4").Select
Range("A2").Select
ActiveCell.Offset(0, 1).Activate
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.Offset(0, 1).Activate
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
False, Transpose:=False
Range("E10").Select
Sheets("Sheet3").Select
Cells.Find(What:=Sheet4.Range("A3").Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Sheets("Sheet4").Select
Range("A3").Select
ActiveCell.Offset(0, 1).Activate
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.Offset(0, 1).Activate
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
False, Transpose:=False
Range("E10").Select

Sheets("Sheet3").Select
Cells.Find(What:=Sheet4.Range("A4").Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Sheets("Sheet4").Select
Range("A4").Select
ActiveCell.Offset(0, 1).Activate
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.Offset(0, 1).Activate
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlAdd, SkipBlanks:= _
False, Transpose:=False
Range("E10").Select
Sheets("Sheet4").Select
Range("A2:B4").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A2").Select
ActiveWorkbook.Save
End Sub

例如:If Sheet3 Range A3 = **Coca Cola**, And B3 = **20**,当我调用宏Increase_Value()时,VBA应在表4的A列中找到值Coca-Cola,如果在第10行(A10(中找到值,则将表3范围B3中的值20添加到表4范围B10中。如果B10是47,那么在运行宏之后,它应该是67。

看起来你正在尝试做一些vlookup可以轻松解决的事情?你可以在VBA和中进行vlookup

以下是确切的公式-
''应用程序。WorksheetFunction.vlookup(lookup_value,table_array,col_index_num,range_lookup(''

你可以在这里找到更多信息:https://excelmacromastery.com/vba-vlookup/

谢谢,

相关内容

最新更新