Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: variabel Spalten Löschen

variabel Spalten Löschen
Hermann
Liebe Excel-Gemeinde,
leider komme ich mal wieder nicht weiter und hoffe auf
eure Unterstützung bei 2 für euch winzigen Problemchen.
1) Ich versuche variable Spalten zu löschen mit dem Befehl
ActiveSheet.union(range(cells(1,spaWeg+6),cells(99,spaWeg+25)).EntireColumn.Delete
dies funktioniert nicht. SpaWeg ist integer
2) ich versuche bei einem varablen Bereich die Formeln durch Werte zu ersetzen.
Dies funktioniert mit festen Spaltenangaben mit folgenden Befehlen
a = .[A:O]
.[A:O] = a
Wie aber geht das mit variablen angaben.
Sehr freue ich mich über einige tips hierzu
Mit freundlichem Gruß
Hermann
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: variabel Spalten Löschen
02.05.2010 18:27:25
Hajo_Zi
Hallo Josef,
Option Explicit
Sub Josef()
Dim spaWeg As Integer
spaWeg = 5
ActiveSheet.Range(Cells(1, spaWeg + 6), Cells(99, spaWeg + 25)).EntireColumn.Delete
End Sub

Anzeige
AW: variabel Spalten Löschen
02.05.2010 18:36:31
Hermann
Hallo Hajo,
du hast ja sensationell schnell geantwortet. Vielen Dank. Es fuktioniert auch klasse.
Ich war also auf dem ricchtigen Weg.
Könntest Du mir bei Punkt 2 auch noch hefen:
2) ich versuche bei einem varablen Bereich die Formeln durch Werte zu ersetzen.
Dies funktioniert mit festen Spaltenangaben mit folgenden Befehlen
a = .[A:O]
.[A:O] = a
Wie aber geht das mit variablen angaben. auch mit Range?
Sehr freue ich mich auch hierzu über einige tips
Mit freundlichem Gruß
Hermann
Anzeige
AW: variabel Spalten Löschen
02.05.2010 19:08:00
Hajo_Zi
Hallo Hermann,
mache es doch mit kopieren Werte.
Gruß Hajo
AW: variabel Spalten Löschen
02.05.2010 19:11:50
Erich
Hi Hermann,
das geht am besten so:

With Range("C1:C" & lngRow)
.Formula = .Value
End With
Noch eine Bemerkung zu "ActiveSheet":
In einer Zeile wie
ActiveSheet.Range(Cells(1, spaWeg + 6), Cells(99, spaWeg + 25)).EntireC...
ist "ActiveSheet" überflüssig, falsch oder unnötig.
Wenn schon, müsste man schon schreiben
ActiveSheet.Range(ActiveSheet.Cells(1, spaWeg + 6), ActiveSheet.Cells(99, spaWeg + 25)).EntireC...
Wesentlich dafür, welcher Bereich bezeichnet wird, ist nicht das "ActiveSheet" vor "Range".
Also: Entweder ganz weglassen:
Range(ActiveSheet.Cells(1, spaWeg + 6), ActiveSheet.Cells(99, spaWeg + 25)).EntireC...
Wenn ActiveSheet gebraucht wird (weil der Code nicht in einem Standardmodul steht),
dann besser so:

With ActiveSheet
.Range(.Cells(1, spaWeg + 6), .Cells(99, spaWeg + 25)).EntireC...
End With
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: variabel Spalten Löschen
02.05.2010 19:17:55
Hajo_Zi
Hallo Erich,
da Du keine Formel eintragen willst, was man bei Formula vermuten könnte. Reicht auf beiden Seiten auch Value.
Gruß Hajo
AW: variabel Spalten Löschen
02.05.2010 21:31:53
Hermann
Vielen Dank für die schnelle und gute Hilfe
Hat super funktioniert.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige