Das Clever-Excel-Forum.de - Treffen
... 14.-16. September 2018 im Allgäu ...

VBA-Code einrücken
#1
Hallo zusammen,

gibt es eine Möglichkeit mit Bordmitteln, den gesamten VBA-Code eines VBA-Projekts in "einem Rutsch" einzurücken bzw. die Einrückungen aufzuheben.

Habe ein VBA-Projekt mit ca. 50 Unterprogrammen, die über ca. 70 Module bzw. 20 Tabellen verteilt sind.

Habe es versucht mit  Utilities / Einrücker , aber da macht er mir maximal nur immer 1 Modul bzw. 1 Tabelle.

Sehe nur die Auswahlen

- Markierter Text
- aktuelle Prozedur
- komplettes Modul            

und mit denen wird nur ein Teil abgehandelt.

Gibt es da einen Trick oder übersehe ich irgend etwas?

Vielleicht kann mir jemand bei Gelegenheit behilflich sein und mir einen Tipp geben.

Besten Dank schon mal
Viele Grüße
Günther

(MS Office 2013)
to top
#2
Hi,

schau mal bei Herber http://www.herber.de/download1.html nach VBEPlusde.zip
Mit freundlichen Grüßen  Smile
Michael
to top
#3
Hallo,

früher gab es auch mal die mztools kostenlos, bis zur Version3.
Letzte Version war wohl MZ-Tools 3.00.1218 released (March 1, 2015)
Eventuell findet man die noch irgendwo im Netz. Die aktuellen Versionen sind nicht mehr kostenlos.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#4
Hi,

Du hast angegeben, dass Du XL 2003 verwendest. Da sollte der Smart Indenter (einfach mal danach goggeln) genau das tun, was Du möchtest ...
to top
#5
Und was beabsichtest du damit ? (speziel 'Einrückungen aufheben' ?).
to top
#6
Hallo!

Das geht auch über unserem Tool. http://www.rholtz-office.de/vba-html

Gruß, René
to top
#7
Hallo zusammen,

danke erstmals für die vielen Hinweise und Anregungen.
Werde mir sie bei Gelegenheit alle mal anschauen und bei Bedarf ausprobieren.

Sollte ich weiterhin Unterstützung brauchen, werde ich mich wieder bei Euch melden.
Viele Grüße
Günther

(MS Office 2013)
to top
#8
Vielleicht ?


Code:
Sub M_snb()
   For Each it In ThisWorkbook.VBProject.VBComponents
      With it.codemodule
        c00 = Replace(.Lines(1, .countoflines), vbLf, vbLf & vbTab)
        .deletelines 1, .countoflines
        .addfromstring c00
      End With
   Next
End Sub
to top
#9
Hallöchen,

die Codeeinrücker bekommen es in der Regel schon hin, dass bei Schleifen, With, If usw. die codes entsprechend der Schachtelungstiefe eingerückt wird. Dass erfordert wohl ein paar mehr codezeilen.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#10
(26.02.2016, 20:27)schauan schrieb: (...) Dass erfordert wohl ein paar mehr codezeilen (...)
"Ein paar" ist gut. Das sind schon ein paar viel mehr. Wink Unser Codeeinrücker prüft sogar auf fehlerhafte Blöcke. Ist z.B. ein If-Block fehlerhaft wird das angezeigt und das Einrücken abgebrochen, sofern man den If-Block zum Einrücken auswählt.
to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste