Sub spaltenLoeschen()
'mit with kann man ein Objekt (Hier das Sheet) direkt ansprechen:
With ThisWorkbook.Worksheets("Sheet1")
'eine Schleife von 4te Spalte (da D = 4er Buchstabe im Alphabet) bis Spaltenanzahl (Für Zeile 200 anstatt .Columns.Count einfach 200 einsetzen ;) )
For i = 4 To .Columns.Count
'Prüft ob es in der Zelle mit Adresse - Zeile 3, Spalte D bis Ende einen Eintrag gibt:
If .Cells(3, i) = ""
'Wenn nicht löschen:
Then.Columns(i).Delete
'Und alles wieder schließen
End If
Next i
End With
End Sub
Hier nochmal kommentiert, damit man auch als VBA Neuling alles vesteht.