Autor
|
Thema: Makro erstellt neuen Button mit neuem Makro?? (1099 mal gelesen)
|
christian499 Mitglied Student
Beiträge: 3 Registriert: 17.09.2007
|
erstellt am: 17. Sep. 2007 18:45 <-- editieren / zitieren --> Unities abgeben:
Hallo! Ich möchte in einer excel arbeitsmappe in einer Tabelle einen Button der folgendes machen soll: eine neue Tabell erstellen und benennen in einer anderen Tabelle einen neuen Button erstellen der neue Button soll ein Makro enthalten dass wenn man es ausführt excel zu der neu erstelltem Tabelle springt die ersten beiden Punkte hab ich schon: Sub addvehicle() ' ' addvehicle Makro ' ' var1 = InputBox("Plate Nr.:") var2 = InputBox("Make:") Sheets("Template").Select Sheets("Template").Copy After:=Sheets(5) Sheets("Template (2)").Name = var2 + " " + var1 ActiveSheet.Range("E7").Select Selection = var1 ActiveSheet.Range("C3").Select Selection = var2 Sheets("HOME").Select Dim objOLEObject As OLEObject Set objOLEObject = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _ Left:=470, Top:=627, Width:=123, Height:=21) objOLEObject.Object.Caption = var2 + " " + var1 End Sub ich muss also nur mehr dafür sorgen dass der neue Button seine Funktion erhält - nur hab ich leider keinen Plan WIE?? Danke im Voraus MfG Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 17. Sep. 2007 22:35 <-- editieren / zitieren --> Unities abgeben: Nur für christian499
Guten Abend, Punkt 3 ist mir ein wenig unlogisch unter Betrachtung von Punkt 2... untenstehender Code, erstellt dein Blatt, erzeugt einen Modul, schreibt einen Code hinein <(Sheets"hugo").Activate> erzeugt eine Schaltfläche , benennt sich nach dem "var1 und var 2" Namen und weist das Makro zu, so das zu dem "Var1 und var2" Blatt hingesprungen werden kann. ausdokumentiertes kann entfernt werden Code: Sub addvehicle()' addvehicle Makro var1 = InputBox("Plate Nr.:") var2 = InputBox("Make:") mName = var2 + "_" + var1 ' Sheets("Template").Select Sheets("Template").Copy After:=Sheets(5) '(Sheets.Count) eingeben, wenn immer as last Sheets("Template (2)").Name = mName ' ActiveSheet.Range("E7").Select ' Selection = var1 Cells(7, 5) = var1 'Zeilen,Spalten Cells(3, 3) = var2 ' Dim cb As MSForms.ComboBox 'Set cb = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False, _ DisplayAsIcon:=False, Left:=100, Top:=80, Width:=120, Height:=20).Object 'cb.Name = "addvehicle2" 'erzeuge Modul Set VBP = Application.VBE.ActiveVBProject VBP.VBComponents.Add (1) VBP.VBComponents(VBP.VBComponents.Count).Name = mName 'befülle modul With VBP.VBComponents(VBP.VBComponents.Count).CodeModule .InsertLines 3, "Sub " & mName & "()" .InsertLines 4, "Sheets(""" & mName & """).Activate" .InsertLines 5, "End Sub" End With Sheets("HOME").Activate ActiveSheet.Buttons.Add(65, 43, 121, 60).Select 'Schaltfläche erstellen Selection.OnAction = mName 'makro zuweisen Selection.Characters.Text = mName 'Schaltfläche benennen End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
christian499 Mitglied Student
Beiträge: 3 Registriert: 17.09.2007
|
erstellt am: 18. Sep. 2007 07:10 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen Danke für deine schnelle Antwort! In der Zeile: Set VBP = Application.VBE.ActiveVBProject bekomme ich die Fehlermeldung: "Laufzeitfehler 1004 der programatische Zugriff auf das VB Project ist nicht sicher" vieleicht kannst mir da noch mal unter die Arme greifen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
christian499 Mitglied Student
Beiträge: 3 Registriert: 17.09.2007
|
erstellt am: 18. Sep. 2007 08:08 <-- editieren / zitieren --> Unities abgeben:
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|