Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
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
Inhaltsverzeichnis

VBA: Makro-Zeile änder

VBA: Makro-Zeile änder
10.01.2020 20:22:16
Charly
Nabend
vor einiger Zeit hab Ich nen Code via Googe gefunden,
diesen nutze Ich hin u. wieder.
Ist es Möglich an statt im ganzen Modul nur in Sub´s zu Suchen?
Option Explicit
Private Sub Cbu_Suchen_Click()
Zeichen_im_VBA_Modul_ersetzen
'    Zeichen_in_den_VBA_Modulen_ersetzen
Unload Me
End Sub
'Dieser Code Sucht u. Ersetzt nur im angegebenen Modul!
Sub Zeichen_im_VBA_Modul_ersetzen()
Dim m As Object, VBACode As String
Dim SuchString As String, ErsatzString As String
SuchString = TextBox1.Value  ' oder "Debug.Print"
ErsatzString = TextBox2.Value 'oder "MsgBox"
Set m = ThisWorkbook.VBProject.VBComponents("Modul1").CodeModule
VBACode = m.Lines(1, m.CountOfLines)
VBACode = Replace(VBACode, SuchString, ErsatzString)
m.DeleteLines 1, m.CountOfLines
m.InsertLines 1, VBACode
End Sub

'Dieser Code Sucht u. Ersetzt in allen Modulen!
'Sub Zeichen_in_den_VBA_Modulen_ersetzen()
'    Dim m As Object, v As Object, VBACode As String
'    Dim SuchString As String, ErsatzString As String
'   SuchString = TextBox1.Value
'    ErsatzString = TextBox2.Value
'    For Each v In ThisWorkbook.VBProject.VBComponents
'        If v.Name  "UFx_Code_aendern" Then
'            Set m = v.CodeModule
'            If m.CountOfLines > 0 Then
'                VBACode = m.Lines(1, m.CountOfLines)
'                VBACode = Replace(VBACode, SuchString, ErsatzString)
'                m.DeleteLines 1, m.CountOfLines
'                m.InsertLines 1, VBACode
'            End If
'        End If
'    Next v
'End Sub

'Quelle: http://www.office-loesung.de/ftopic200426_0_0_asc.php
Gruß Charly

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Makro-Zeile änder
10.01.2020 21:20:25
onur
1) der 2. Code ändert nicht in allen Modulen, sondern nur im Modul: "UFx_Code_aendern".
2) Nur in Subs? Im Gegensatz zu "nur in Functions"? Eine Modul besteht doch (bis auf die Deklarationen) nur aus Subs und Functions.
3) Finger weg von "Code ändern via Code", und erst recht als Anfänger!
AW: VBA: Makro-Zeile änder
10.01.2020 21:56:53
Charly
Nabend onur,
1) der 2. Code ändert nicht in allen Modulen, sondern nur im Modul: "UFx_Code_aendern".

Dies ist nur ein Bsp. Auszug, habe ihn schon mehrfach Benutzt um in ein Standardmodul "Werte" im Code zu ändern.
2) Nur in Subs? Im Gegensatz zu "nur in Functions"? Eine Modul besteht doch (bis auf die Deklarationen) nur aus Subs und Functions.

Ja in Sub´s, warum Ich hab z.B. ein Modul in dem 3.Sub mit bis zu 900 Codezeilen stecken.
Schade ist es wenn Ich z.B. einen Wert Suche u. ihn Ersetze, aber das kann mitunter zu einem Problem werden wenn in dem Modul1 2 Sub´s sind wo der Wert gefunden wurde.
3)

Finger weg von "Code ändern via Code"
,
Warum, wie gesagt den oberen Code benutze Ich schon ne weile ohne Probelem.
und erst recht als Anfänger!

Anfänger wissen nicht alles, aber Sie lernen dazu.
Gruß Charly
Anzeige
AW: VBA: Makro-Zeile änder
10.01.2020 22:01:49
onur
Wenn du glaubst, Code per Code ändern zu müssen, hast du garantiert irgendwo einen Denkfehler, denn das ist völlig überflüssig, wenn man vernünftig programmieren kann.
Sage mir warum du das glaubst und sage dir, wie man es auch erreicht ohne den Code zu ändern.
AW: VBA: Makro-Zeile änder
10.01.2020 22:27:27
Charly
Ich sag ja nicht das ich nen As bin als Anfänger.
Einen Code auf diese weise zu ändern ist doch nicht Schlimm od.?
Ja man könnte eine Tabelle für diesen Zweck Anlegen dauert aber länger diese erst einmal zu erstellen.
Wenn Code per Code ändern fasch ist, warum wird es den im Forum Thematisiert?
Gruß Charly
AW: VBA: Makro-Zeile änder
10.01.2020 22:55:48
onur
"Anfänger wissen nicht alles, aber Sie lernen dazu." - mit "und erst recht als Anfänger" meinte ich, dass nur ein Anfänger auf so eine Idee kommen würde, und deswegen wird es wohl immer wieder mal thematisiert.
Überlege lieber, wie du programmieren müsstest, damit du NICHT im Code rumpfuschen must - da lernst du wesentlich mehr.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige