Wer kann mir sagen warum das Makro nicht (vollständig) funktioniert?

Hallo Leute,

wie in der Frage zu lesen ist, kann ich mir nicht erklären warum mein Makro nicht funktioniert. Kurz zur Erläuterung: Ich muss in ca. 400 Tabellen eine neue Bezeichnung eintragen. Dafür habe ich mir ein Makro geschrieben, dass alle Excel Dateien in dem entsprechenden Ordner aufruft, eine bestimmte Zeile der Tabelle nach Bezeichnungen durchsucht und die neue Bezeichnung eine Zeile weiter unten einträgt. Das hat auch bei den meisten Zellen wunderbar funktioniert, aber vier Zellen will das Makro einfach nicht ändern.

Hier mal das Makro:

Sub Mischungen()

Dim zelle As Long
Dim cDir As String
Dim sPath As String
sPath = „D:\xxxxx\xxxxxxxx\Mischungen Öle“
cDir = Dir(sPath & „*.xlsx“)

Do While cDir <> „“
Workbooks.Open (sPath & cDir)

For zelle = 1 To 70

If Cells(1, zelle) = "Soll V 40" Then Cells(2, zelle) = "DIN 51659-2"
If Cells(1, zelle) = "Soll V 20" Then Cells(2, zelle) = "DIN 51659-2"
If Cells(1, zelle) = "Soll NZ" Then Cells(2, zelle) = "DIN 51558-2"
If Cells(1, zelle) = "Soll VZ DIN" Then Cells(2, zelle) = "DIN 51599-2"
'If Cells(1, zelle) = "VZ Seife" Then Cells(2, zelle) = "DIN 51599-2"
'If Cells(1, zelle) = "Soll Vz Seife" Then Cells(2, zelle) = "DIN 51599-2"
'If Cells(1, zelle) = "*V 20 bei 20°C" Then Cells(2, zelle) = "DIN 51659-2"
'If Cells(1, zelle) = "pH Wert Konzentrat" Then Cells(2, zelle) = "DIN 51369"
'If Cells(1, zelle) = "pH 5%" Then Cells(2, zelle) = "DIN 51369"
'If Cells(1, zelle) = "Aussehen 5%" Then Cells(2, zelle) = "visuell"
'If Cells(1, zelle) = "Soll LW" Then Cells(2, zelle) = "DIN EN 27888"
'If Cells(1, zelle) = "LW  µS" Then Cells(2, zelle) = "DIN EN 27888"
'If Cells(1, zelle) = "IR-ZnSe" Then Cells(2, zelle) = "DIN 51451"

Next zelle

Cells.EntireColumn.AutoFit
Range(„A3“).Select

ActiveWorkbook.Save
ActiveWorkbook.Close False

cDir = Dir
Loop

End Sub

Es geht um die ersten vier If-Zeilen, die deaktivierten Zeilen haben alle funktioniert.
Ich weiß nicht ob es relevant ist, aber die Zahlen in den Zellen sind meisten Indizes und tiefgestellt (Bsp: Soll V 40).

Ich hoffe ihr könnt mir helfen, ich habe keine Lust die 400 Tabellen händisch zu ändern.
Vielen Dank

Ich habe mir mal dein Makro angeschaut, und hab auf den ersten Blick keinen Fehler entdeckt. Aber was meinst du mit „die Zahlen in den Zellen sind meistens Indizes und tiefgstellt“.
Steht dann z.B. in Zelle A1=„Soll V 40“ ?
Es ist dann somit ein String und keine Zahl.

Hast du schonmal probiert die zahlen nicht tiefgestellt zu machen? (Testweise für ein paar Dateien)

LG

Hallo,

bist du sicher das der Vergleich auch funktionieren kann? gibt es vieleicht fuehrende oder schliessende Leerzeichen in der Zelle? Da wuerde u.U. ein Trim(Cells(1,zelle)) helfen.

Auserdem ware an der Stelle eine Select…case Anweisung eleganter, einfacher zu debuggen und schneller.

Tschau
Peter