Clever-Excel-Forum

Normale Version: VBA intelligente Tabelle erweitern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich benötige eure Hilfe weil ich in Sachen VBA nur so weit komme wie mich der Makro-Rekorder bringt  Huh

Beschreibung:
Ich habe eine intelligente Tabelle. Sie befindet sich im Tabellenblatt 1 und liegt z.Zeit im Bereich  A2:BS32 (incl. Überschrift)

Ich würde im Tabellenblatt 2 gerne eine Dateneingabe erzeugen um neue Daten in die intelligente Tabelle einzufügen.
Die Eingabe soll im Bereich Tabellenblatt 2! A2:A32 entstehen.
Eins meiner Probleme: Es gibt in der Tabelle auch Formeln und diese dürfen beim Einfügen nicht überschreiben werden.

So wie ich die Schritte beschrieben würde:
1. erweitere die intelligente Tabelle im Tabellenblatt1! A2:BS32 um eine weitere Zeile (incl. Formeln)
2. Kopiere die Zeile Tabellenblatt2! A2:A32 in die neue Zeile vom Tabellenblatt1,  ignoriere dabei alle Zellen in denen Formeln stehen.
3. Bei erfolgreicher Ausführung, Lösche den Inhalt aus Tabellenblatt2!A2:A32

Ich habe mal versucht eine Beispieltabelle zu erstellen. Da die Formeln hier nicht funktionieren habe ich sie auf ein Minimum reduziert.

Danke und schöne Grüße
Holger
Hallo,

warum willst du die Daten nicht direkt in Tabelle 1 eingeben?
Moin

Offenbar ist hier mal wieder eine falsche Arbeitsmappe hochgeladen worden.
Die Blätter "Tabellenblatt 1" und "Tabellenblatt 2" gibt es nicht.
In einem Tabellenblatt gibt es in allen Spalten Formeln und im anderen Tabellenblatt gibt es in den Spalten keine Formeln aber dafür Texte (inkl. Text mit Länge 0).
Zitat:Offenbar ist hier mal wieder eine falsche Arbeitsmappe hochgeladen worden.
Die Blätter "Tabellenblatt 1" und "Tabellenblatt 2" gibt es nicht.
Hallo
Es ist natürlich nicht die Original-Datei und  ich habe wirklich versucht aus der Original-Datei eine brauchbare Ansicht zu erstellen.
War denn offensichtlich wohl nicht so schlau den Tabellen 1 und 2 noch einen Namen zu geben sorry

"Tabellenblatt 1" hat den Namen "Daten" und enthält besagte Tabelle (siehe Namenfeld - Tabelle1)
"Tabellenblatt 2" hat den Namen "Eingabe" und enthält die gewünschte Eingabemaske


Zitat:In einem Tabellenblatt gibt es in allen Spalten Formeln ..... 


Wie vor, ich dachte es hilft wenn in den Zellen Formel oder Text lesen kann 
Wie vor, ich dachte es hilft wenn im "Tabellenblatt 2[Eingabe] die Zellen in denen Formeln stehen "ignorieren" steht. 

Ich habe jetzt noch mal versucht die Formeln und Text mit Länge 0 zu löschen. Bin mir da aber nicht sicher. 
Sollte es nicht ausreichend sein ignoriert bitte die hochbeladene Tabelle und orientiert euch an meinem Text in Eingangs-Posting


Zitat:Hallo,
warum willst du die Daten nicht direkt in Tabelle 1 eingeben?

Im Datensatz sind diverse Spalten ausgeblendet und der Blattschutz ist aktiv. 
Wenn ich einen funktionierenden Code hätte würde ich den Rest aber auch selbst hin bekommen.
Das macht (finde ich) die Fragestellung einfacher

Gruß Holger
Hallöchen,

so ganz verständlich ist das aber noch nicht. In Deinem Muster steht die Salte A zum Ignorieren.

Oben schreibst Du
Die Eingabe soll im Bereich Tabellenblatt 2! A2:A32 entstehen.

und
Kopiere die Zeile Tabellenblatt2! A2:A32 in die neue Zeile vom Tabellenblatt1,

A2:A32 ist aber keine Zeile und wenn die zu ignorierenden Daten von A2:A32 in eine Zeile eingefügt werden sollen was passiert dann mit dem Rest?.


Ich gehe nun davon aus, dass Du die Bereiche aus C:AD, AF:BG, BI und BL:BN kopieren willst.

Du kopierst die entsprechenden zusammenhängenden Spaltenbereiche von Zeile 2 bis Zeile 32 nacheinander in die intelligente Tabelle. Beim ersten Einfügen wird die Tabelle um die entsprechende Anzahl Zeilen erweitert und vorhandene Formeln nachgezogen. die nächsten Bereiche kopierst Du auch wieder und fügst sie in die gleiche Zeile ein.
Das kannst Du auch mit dem Makrorekorder aufzeichnen.

Was hat es eigentlich für einen Grund, dass Du die Daten nicht gleich direkt eingibst?