also ich hab folgendes Problem. Ich will mit einem Makro ein Makro schreiben. Ich weiß zwar wie, allerdings macht stürtzt Excel mir dabei immer ab.
Also Tabelle wird einwandfrei übergeben und in der Variable Tabelle und gcn steht dir richtige Tabelle drin.
Sub Sub_anlegen(Tabelle As String)
gcn = GetCodeName(Tabelle)
Tabelle = gcn
Set VBP = ActiveWorkbook.VBProject.VBComponents(Tabelle)
With VBP.CodeModule
.insertlines 1, "Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)"
.insertlines 2, " Reset"
.insertlines 3, " If Not Target.Comment Is Nothing Then"
.insertlines 4, " If Target.Comment.Text = ""Hier wird die Artikelnummer des bonierten Artikels eingegeben."" Then"
.insertlines 5, " NeuesKontextMenü"
.insertlines 6, " End if"
.insertlines 7, " End If"
.insertlines 8, "End Sub"
End With
End Sub
Function GetCodeName(wsn$) As String
Dim ws As Worksheet
wsn = LCase(wsn)
For Each ws In Worksheets
If wsn = LCase(ws.Name) Then
GetCodeName = ws.CodeName: Exit Function
End If
Next ws
GetCodeName = ""
End Function
Jetzt kommt allerdings der Fehler und Excel spuckt das aus:
EXCEL verursachte einen Fehler durch eine ungültige Seite
in Modul VBA332.DLL bei 016f:65191330.
Register:
EAX=01ed911c CS=016f EIP=65191330 EFLGS=00010246
EBX=01ee12ec SS=0177 ESP=0062e6d4 EBP=0062e724
ECX=000000c8 DS=0177 ESI=0000ffff FS=13f7
EDX=01ea02f8 ES=0177 EDI=01ef2384 GS=0000
Bytes bei CS:EIP:
8b 04 b0 85 c0 75 44 8b 5f 0c 8b 4c 24 14 85 c9
Stapelwerte:
01f0858c 01f08568 01ee12ec 651460f4 0062e6f8 01f08568 ffffffff 01ef6278 01efab94 00000005 01ee10cc 01ef6100 000000c8 00000000 00000000 00000000
Oder Excel verabschiedet sich sofort!!!
Was jemand woran das liegen könnte? Kann man sonst irgendwie auf die Tabelle zugreifen und das Makro schreiben?
Für Eure Hilfe bin ich sehr Dankbar!
Daniel