Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
388to392
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Code löschen

Code löschen
25.02.2004 12:54:56
Andi
Liebe Leute,
vor einigen Wochen habe ich hier im Forum von Josef Ehrensberger folgenden Code bekommen:

Sub Loeschen()
Dim WB As Workbook
Set WB = ActiveWorkbook
With WB.VBProject.VBComponents("Tabelle1").CodeModule
.DeleteLines 1, .CountOfLines
End With
End Sub

damit kann man per VBA einen bestimmten Teil des Codes löschen; dieser Teil wird über die Zeilennummern festgelegt.
Nun kommt es ja mitunter vor, dass man am Code was verändert, und dann müsste man diese Zeilennummern wieder neu abzählen. Da ich in meinem Workbook mehrere Code-Teile vor beim ersten speichern löschen möchte, wäre das relativ umständlich; deshalb meine Frage:
kann man den zu löschenden Teil auch über so etwas wie Sprungmarken festlegen? In etwa so:
With WB.VBProject.VBComponents("Tabelle1").CodeModule
.DeleteLines [from marke1 to marke2]
'Code
marke1:
'zu löschender Code
marke2:
'Code
Ist sowas möglich?
Schönen Gruß,
Andi

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code löschen
25.02.2004 17:29:51
Karl-Otto Reimann
Hallo Andi
Setz doch 'mal de Cursor in "DeleteLines" und drück F1.
Gruß
Karl-Otto
AW: Code löschen
25.02.2004 18:37:12
Andi
Hallo Karl-Otto,
wenn ich das mache, dann erscheint folgendes:
"Dieses Feature ist zur Zeit nicht installiert. Möchten Sie es jetzt installieren?"
*Jetzt* installieren heisst in meinem Fall: *Jetzt* die EDV-Abteilung meiner Firma bitten, das Feature zu installieren und hoffen, dass die das *irgendwann* tun :-(
Langer Rede kurzer Sinn:
könntest Du bitte den Hilfe-Text, der dann eigentlich erscheinen müsste, für mich posten?
Herzlichen Dank & schönen Gruß,
Andi
AW: Code löschen
25.02.2004 20:28:51
Nepumuk
Hallo Andi,
du könntest nach bestimmten Zeile in einem bestimmten Modul suchen. Würde das genügen?
Gruß
Nepumuk
Anzeige
AW: Code löschen
25.02.2004 20:32:23
Karl-Otto Reimann
Klar, kein Prob.
DeleteLines-Methode
Löscht eine einzelne Zeile oder einen bestimmten Zeilenbereich.
Syntax
Objekt.DeleteLines (Startzeile) [, Zähler]
Die Syntax der DeleteLines-Methode besteht aus folgenden Teilen:
Teil Beschreibung
Objekt Erforderlich. Ein Objektausdruck, der ein Objekt in der Liste unter Betrifft ergibt.

Startzeile Erforderlich. Ein Wert vom Typ Long, der die erste zu löschende Zeile angibt.
Zähler Optional. Ein Wert vom Typ Long, der die Anzahl der zu löschenden Zeilen angibt.
Bemerkungen
Falls Sie nicht angeben, wie viele Zeilen gelöscht werden sollen, löscht DeleteLines nur eine Zeile.
-----------------------------------------------------------------------------------------
DeleteLines-Methode (Beispiel)
Das folgende Beispiel besteht aus zwei Schritten. Die erste For…Next-Schleife verwendet die InsertLines-Methode, um in CodePanes(1) 26 immer länger werdende Startsegmente des Alphabets einzufügen. Begonnen wird mit "a", die letzte eingefügte Zeile ist das gesamte Alphabet.
Die zweite For…Next-Schleife verwendet die DeleteLines-Methode, um die Zeilen mit ungerader Zeilennummer zu löschen. Auf den ersten Blick sieht es so aus, als ob die zweite Schleife einfach jede zweite Zeile löschen soll; beachten Sie jedoch, daß nach jedem Löschvorgang die Zeilen erneut numeriert werden. Daher schreitet der Löschvorgang bei jeden Schritt um zwei Zeilen weiter: um eine Zeile, da I um eins erhöht wird und eine weitere Zeile, da die größeren Zeilennummern jeweils um eins verringert werden.
For I = 1 to 26
Application.VBE.SelectedVBComponent.CodeModule.InsertLines _ i,Mid$("abcdefghijklmnopqrstuvwxyz", 1, I)
Next
For I = 1 to 13
Application.VBE.SelectedVBComponent.CodeModule.DeleteLines I
Next
-------------------------------------------------------------------------------------
CountOfLines-Eigenschaft (Beispiel)
In dem folgenden Beispiel wird die CountOfLines-Eigenschaft verwendet, um die Gesamtanzahl der Zeilen in einem bestimmten Code-Bereich zurückzugeben.
Application.VBE.CodePanes(2).CodeModule.CountOfLines
Viel Spaß
KO
Anzeige
AW: Code löschen
26.02.2004 08:39:30
Andi
Hallo Karl-Otto & Nepumuk,
danke für die Antworten. So einfach, wie ich hoffte isses wohl nicht, ohne Zähler geht's wohl nicht. Aber mit dem Hilfe-Text werd' ich schon irgendwie zurechtkommen.
Nach einer bestimmten Zeile zu suchen bringt mir leider nix, weil es mehrere hundert Zeilen sind, die gelöscht werden sollen. Trotzdem Danke für dem Tip.
Einen schönen Tag wünscht
Andi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige