Excel VBA Wert in Spalte, und Mathematik

Habe ich

Spalte A mit Namen

Spalte B - mit Mengen

Spalte C - Wo ich will zurückgegebene Wert Menge x Kosten

Spalte E - mit Namen, sondern befindet sich in verschiedenen Zellen

Spalte F - mit Preisen

Was ich versuche zu erreichen ist: Nehmen Sie den Wert aus A1 und finden es in E:E (Können sagen, wir fanden es in E10), wenn gefunden, nehmen Sie den Wert B1 und multiplizieren Sie den Jeweiligen Wert F10 - und stellen alles in Spalte C

Und so weiter für alle Werte in Spalte A

Ich versuche zu tun, es mit Do while und zwei Variablen x und y, aber für einige Grund es nicht finden, alle Werte nur für einige Zeilen.

Vielen Dank im Voraus.

Sub update_button()
'calculates money value for amazon sku
Dim x, y, z As Integer 'x, y, and z variables function as loop counters

'Loop through added SKU/Prices
For x = 4 To 25000
If Worksheets("Sheet1").Range("H" & x) = "" Then
'Blank row found, exit the loop
Exit For
End If


  'Loop through Column E to find the first blank row to add the value from H into
For y = 4 To 25000
    If Worksheets("Sheet1").Range("E" & y) = "" Then
    'Blank row found, Add SKU and Price
    Worksheets("Sheet1").Range("E" & y) = Worksheets("Sheet1").Range("H" & x)
    Worksheets("Sheet1").Range("F" & y) = Worksheets("Sheet1").Range("I" & x)

    'Blank out Columns H and I to prevent need to do it manually
    Worksheets("Sheet1").Range("H" & x) = ""
    Worksheets("Sheet1").Range("I" & x) = ""
    Exit For
    End If
Next y
Next x

'---NOW THIS IS WHERE I HAVE THE PROBLEM



'Get Values
Dim intCumulativePrice As Integer
'Loop through report tab and get SKU
x = 4 'initialize x to the first row of data on the Sheet1 tab
Do While Worksheets("Sheet1").Range("A" & x) <> "" 'Loop through valid SKU's to find price of item

y = 4 'initialize y to the first row of SKUs on the Sheet1 tab
Do While Worksheets("Sheet1").Range("E" & y) <> ""
If Worksheets("Sheet1").Range("E" & x) = Worksheets("Sheet1").Range("A" & y) Then 'Check if current SKU on Sheet1 tab matches the current SKU from SKU list



    'Calculates the total
    intCumulativePrice = intCumulativePrice + (Worksheets("Sheet1").Range("B" & y) * Worksheets("Sheet1").Range("F" & x))
     ' Puts Quantity X Price in Column B agains every Cell
     Worksheets("Sheet1").Range("C" & y) = (Worksheets("Sheet1").Range("B" & y) * Worksheets("Sheet1").Range("F" & x))
Exit Do
End If

y = y + 1
Loop
x = x + 1
Loop
'Puts Grand total in Column L Cell 4
Worksheets("Sheet1").Range("L4") = intCumulativePrice

'Show messagebox to show that report processing has completed
MsgBox "Report processing has been completed successfully", vbInformation, "Processing Complete!"
End Sub
  • Können wir eine Spalte E mit den neuen Werten?
  • Nicht in diesem Fall
InformationsquelleAutor Stliiyone | 2013-10-18
Schreibe einen Kommentar