Hallo zusammen,
ich habe folgende Ausgangstabelle und möchte mit Hilfe eines VBA-Codes (Excel 2019) erreichen, dass Zeile für Zeile nach der Zahl 1820 gesucht wird und der Wert neben dieser Zeile in die 2. Spalte eingetragen wird und zwar in der Formatierung wie in der Zieltabelle (EUR ohne Nachkommastellen) angegeben. Wenn in einer Zeile die Zahl 1820 mehrfach vorkommt, dann soll der Wert neben der ersten 1820 in die 2.Spalte eingetragen werden und die Zelle der ersten Spalte rot eingefärbt werden.
Ausgangstabelle: |
|
|
|
|
|
|
|
|
|
|
Zeile |
DS |
WAG1 |
DS |
WAG2 |
DS |
1 |
|
1820 |
1000000 |
|
|
2 |
|
|
|
1820 |
2000000 |
3 |
|
1820 |
3000000 |
1820 |
1000000 |
|
|
|
|
|
|
Ziel: |
|
|
|
|
|
|
|
|
|
|
|
Zeile |
DS |
WAG1 |
DS |
WAG2 |
DS |
1 |
1.000.000 € |
1820 |
1000000 |
|
|
2 |
2.000.000 € |
|
|
1820 |
2000000 |
3 |
3.000.000 € |
1820 |
3000000 |
1820 |
1000000 |
Folgendes habe ich angefangen zu schreiben, aber die If Then Anweisung funktioniert natürlich nicht. Meine anderen Varianten leider auch nicht und jetzt gebe ich erstmal auf. Habe leider bisher nur Grundkenntisse in VBA und merke, dass noch viel fehlt :-)
Sub DS_Eintragen()
Dim lngZeile As Long
Dim lngZeileMax As Long
Dim Ergebnis As Long
With Tabelle1
lngZeileMax = .UsedRange.Rows.Count
For lngZeile = 2 To lngZeileMax
If Range("lngZeile:lngZeile").Value = "1820" Then
Ergebnis = Cells.Offset(0, 1)
Cells.Offset(0, -1) = Ergebnis
End If
Next lngZeile
End With
End Sub
Kann mir hier jemand helfen?
Vielen Dank und schöne Ostertage
Angela
|