Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Bestimmte Spalten per VBA löschen





Frage

Hallo! Ich hab einige Spalten in meiner Excel Tabelle die ich nicht benötige und die ich von daher mit einem Makro löschen will. Die Spalte beinhaltet als Überschrift den Text "Währung" und die folgendes Zeilen beinhalten die Zeichenkette "EUR". Da diese Spalte in meiner Exceltabelle nun mehrmals vorkommt, möchte ich diese automatisch mit einem Makro löschen lassen. Wer kann mir weiterhelfen? Danke im Voraus! Doehli21

Antwort 1 von piano

Hallo
Hier der Code:
Sub W_Löschen()
Dim i As Integer, Erste As Boolean
  Erste = True
For i = 1 To 255
    If InStr(1, Cells(1, i), "Währung") > 0 Then
          If Not Erste Then
            Range(Columns(i), Columns(i)).Select
            Selection.Delete Shift:=xlToLeft
            i = i - 1
          End If
          Erste = False
    End If
Next i
End Sub

Hier wird die erste Währungsspalte belassen, alle weiteren gelöscht.
Willst du auch die erste löschen, dann entferne die markierten Zeilen.

Gruß piano

Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von Doehli21

Hallo

Danke für deine Antwort. Ich brauche das Makro für meine Access Datenbank, du hattest mir ja gestern schon einen Code gepostet mit dem man aus einem Access Modul Excel Dateien öffnen und bearbeiten kann.

Wie sähe der code für das modul dann aus?

With tabelle.Application
.workbooks.Open Filename:=Exceldatei
.visible
.Screenupdating = True

´Bearbeiten der Excel Datei
.
.
.
wie müsste ich den code hier einfügen?


Danke im Voraus!

Antwort 3 von piano

Hallo
wenn du innerhalb der Anweisung
Zitat:
With tabelle.Application

End with

die Excel-Befehle mit einem "." (Punkt) voran versiehst, sollte es funktionieren.
Gruss piano

Antwort 4 von Doehli21

Hallo!

ich habe nochmal eine Frage zu der Lösung des Spaltenproblems. Bei deiner Lösung löscht der die Spalten "Währung" nur, wenn die in der ersten Zeile stehen, aber nicht wenn die in der 2. oder 3. stehen.

Was kann man da denn machen?

mfg

doehli

Antwort 5 von Doehli21

hat sich schon erledigt!