VBA - Print, wenn nicht leer
14.12.2020 17:37:12
excelliebe
ich möchte per VBA-Code eine Ausgabe der Zellinhalte in Spalte B erzeugen, wenn die Zelle in Spalte A der entsprechender Zelle nicht leer ist.
In Spalte A in eine WENN-DANN-Formel hinterlegt - wenn falsch, dann "". Mein VBA-Code erkennt das leider stets als ist nicht leer, da eine Formel in der Zelle hinterlegt ist, auch wenn das Formelergebnis eigentlich "" ist.
Hier mein Tabellenaufbau:
A B
49 Height#1 12cm
50
51 Width#1 35cm
52
53 Depth#1 32cm
54
55 Weight#1 0,25kg
56
57 Height#2 10cm
58
59 Width#2 93cm
60
61 Depth#2 42cm
62
63 Weight#2 1,20kg
64
65 Height#3 9cm
66
67 Width#3 3cm
68
69 Depth#3 122cm
70
71 Weight#3 0,88kg
Ich möchte jetzt einen Export in den Text-Editor ausgeben. Das funktioniert auch, deshalb habe ich den Code hier auf das wesentlich gekürzt. Und zwar ist meine Schleife falsch. Ich möchte folgende Ausgabe immer für vier Felder, wobei zwischen jedem Feld eine Leerzeile ist.
Folgend mein Versuch:
Sub Export()
Dim N As Long, i As Long, j As Long
N = Cells(Rows.Count, "A").End(xlUp).Row
j = 49
For i = 49 To N
If Cells(i, "A").Value "" Then
Print #1, "" & Cells(i, 2).Text & " "
Print #1, "" & Cells(i + 4, 2).Text & " "
Print #1, "" & Cells(i + 6, 2).Text & " "
Print #1, "" & Cells(i + 8, 2).Text & " "
j = j + 2
End If
Next i
End Sub
Leider werden die falschen Werte ab der 5. zu übernehmenden Zeile übertragen. Die ersten vier passen.Kann jemand helfen?
LG