Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makrocode per Makro erstellen

Forumthread: Makrocode per Makro erstellen

Makrocode per Makro erstellen
12.08.2004 07:55:15
Andi
Morgen,
würde gerne Code für ein Tabellenblatt automatisch generieren. Wußte mal, wie es ging, habe es aber leider vergessen.
Wer kann mir helfen?
Gruß Andi
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makrocode per Makro erstellen
WernerB.
Hallo Andi,
schau mal auf dieser Seite unter "Services / Excel-FAQ / Excel-Beispiele / VBE"; da solltest Du fündig werden.
Gruß
WernerB.
AW: Makrocode per Makro erstellen
12.08.2004 08:22:50
Andi
Hi,
hab ich gemacht, hat mir aber nicht wirklich was gebracht.
Vielleicht weiß ja jemand noch etwas?
Gruß Andi
Zweifel kommen auf...
Ramses
Hallo
"..hab ich gemacht, hat mir aber nicht wirklich was gebracht..."
Nun stelle ich doch berechtigte Zweifel am ersten Teil deiner Aussage an.
Dort ist ein Codebeispiel "Benutzerdefinierte Funktion durch Code erstellen und Löschen" in dem sowohl das Erstellen eines Makros per COde wie auch das Löschen des gleichen per VBA.
Wenn es dir nichts gebracht hat, dann solltest du mal schreiben warum.
Gruss Rainer
Anzeige
AW: Zweifel kommen auf...
12.08.2004 08:36:54
Andi
Hi,
ich möchte ja nicht Code für eine benutzerdefinierte Funktion generieren, sondern für ein Sheet.
Ich weiß nicht, wie ich das machen soll...
Wie ich Code generiere weiß ich, aber nicht wie ich ihn auf das Sheet bekomme.
Gruß Andi
AW: Zweifel kommen auf...
Ramses
Hallo
Lies dir den NBeitrag 192902 "ComboBox mit Ereigniscode in Tabellenblatt erstellen"
Damit sollte deine Frage beantwortet sein.
Gruss Rainer
Anzeige
Leider nicht...
12.08.2004 08:54:14
Andi
Hi,
ich will keine Combobox oder sonstigen Objekte erstellen. Ich möchte lediglich Code für mein neu angelegtes Tabellenblatt generieren...
Hoffe das war verständlich ausgedrückt.
Gruß Andi
Noch offen...
Ramses
Hallo
"...Hoffe das war verständlich ausgedrückt..."
Klar.
Wenn du das gelesen hättest, dann hättest du die Info erhalten wie man Code direkt in das Klassenmodul einer Tabelle schreibt.
Ich habe keine Ahnung was du effektiv vor hast,.... mit den Beispielen im VBE Bereich, sollte es ein leichtes für dich sein dein Problem zu lösen.
Wenn du schon schreibst: "... Wie ich Code genereiere weiss ich..." dann sollte es mit diesen Infos wirklich keine Problem mehr sein. Für mich ist das nicht nachvollziehbar, weil ich auch nicht weiss was du effektiv willst.
Mir ist das ganze nun doch etwas zu mühsam, deshalb klinke ich mich aus.
Gruss Rainer
Anzeige
Lösung
12.08.2004 09:27:21
Russi
Hallo Jungs!
Wie auch immer, vielleicht funktioniert das hier:
Dim StrMakroText
StrMakroText = _
"

Private Sub Workbook_Open()" & Chr(10) & _
"    ActiveSheet.Shapes(""Object 1"").Select" & Chr(10) & _
"    Selection.Verb Verb:=xlPrimary" & Chr(10) & _
"End Sub
"

With ActiveWorkbook
.VBProject.VBComponents.Add (1)
.VBProject.VBComponents("DieseArbeitsmappe").CodeModule.AddFromString StrMakroText
End With
Diese Lösung habe ich erst diese Woche hier im Forum bekommen.
Viele Grüße
Russi
www.Russi.de.tt
Anzeige
AW: Noch offen...
12.08.2004 09:40:22
Andreas
Hi,
hier mal das was ich vor habe. Läuft leider nicht...
Sub Code_einfügen()
'Dim CP As Object
' CodePane für Tabelle2 finden
'For Each CP In Application.VBE.CodePanes
'If CP.codemodule.Name = "Tabelle2" Then
'Set Application.VBE.ActiveCodePane = CP
'End If
'Next
' Code einfügen
On Error Resume Next
With Application.VBE.ActiveCodePane.codemodule
.InsertLines .countoflines + 1, "

Private Sub CommandButton1_Click()"
.InsertLines .countoflines + 1, "Leere_Zellen_loeschen"
.InsertLines .countoflines + 1, "End Sub
"
.InsertLines .countoflines + 1, ""
.InsertLines .countoflines + 1, "

Private Sub Worksheet_Calculate()"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 12).End(xlUp).Row + 1, 12) = [l5]"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 13).End(xlUp).Row + 1, 13) = [m5]"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 14).End(xlUp).Row + 1, 14) = [n5]"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 15).End(xlUp).Row + 1, 15) = [o5]"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 16).End(xlUp).Row + 1, 16) = [p5]"
.InsertLines .countoflines + 1, "activesheet.Cells(activesheet.Cells(Rows.Count, 17).End(xlUp).Row + 1, 17) = [q5]"
.InsertLines .countoflines + 1, "End Sub
"
.InsertLines .countoflines + 1, ""
.InsertLines .countoflines + 1, "

Private Sub Worksheet_activate()"
.InsertLines .countoflines + 1, "Doppelt"
.InsertLines .countoflines + 1, "End Sub
"
End With
End Sub
Wer kann helfen?
Gruß Andreas
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige