AW: Per VBA Code in neues Tabellenblatt einfügen
29.09.2016 10:05:03
Hartmut_M
Hallo, erstmal danke für eure Rückmeldungen.
Komme allerdings noch nicht richtig weiter.
Die Tabelle, die kopiert wird, ist eine maschinell erzeugte csv-Datei, die jede Woche neu erstellt wird. Dieses Tabellenblatt kopiere ich in meine bestehende Excel-Datei. In das importierte Tabellenblatt soll dann code eingefügt werden. Wie könnte ich das sonst bewerkstelligen?
Habe jetzt durch Google folgende Lösung gefunden:
'Makro in neues Tabellenblatt kopieren
Dim x As Integer
With ThisWorkbook.VBProject.VBComponents("Tabelle1").CodeModule
x = .CreateEventProc("Change", "Worksheet")
.InsertLines x + 1, "Dim NR As String, VN As String"
.InsertLines x + 2, "Set Target = Application.Intersect(Target, Range(""B:B""))"
Damit läuft alles so, wie ich es benötige.
Mein Problem ist jetzut noch, dass bei VBComponents in Klammern die Tabellenbezeichnung mit Nummer eingegeben werden muss. Diese Tabellennummer ist aber nicht immer gleich. Statt der Bezeichnung würde ich lieber den Tabellennamen, wie er unten am Tabellenblatt steht nehmen. Also so:
With ThisWorkbook.VBProject.VBComponents("47110").CodeModule
Da bekomme ich aber den Laufzeitfehler 9: Index außerhalb des gültigen Bereiches.
Was mache ich falsch, bzw. wie muss es richtig lauten?
Gruß Hartmut