Microsoft Excel

Herbers Excel/VBA-Archiv

Wachsendes Tabellenblatt

Betrifft: Wachsendes Tabellenblatt von: Ralf
Geschrieben am: 13.11.2012 10:15:53

Hallo

Gesucht wird nach einer VBA-Funktion, die zwischen zwei Zeilen bei gesetztem Blattschutz eine neue Zeile einfügt, wenn in einer Zelle der oberen Zeile ein Eintrag erfolgt ist.
Die Zellen (über n Spalten) der neue Zeile sollen die gleiche Formatierung und Funktionseinträge aufweisen wie die beiden Zeilen.
Auf diese Weise soll das Tabellenblatt kontinuierlich gemäss Bedarf wachsen und nicht vordefiniert mit n Zeilen und dem Zwang punktuell wieder eine grössere Anzahl Zeilen hinzuzufügen.

Mit Gruss
Ralf

  

Betrifft: AW: Wachsendes Tabellenblatt von: Marc
Geschrieben am: 13.11.2012 11:10:42

Moin!
Bei gesetztem Blattschutz geht es nicht.

Allerdings kannst du den Blattschutz auch per VBA aufheben und setzen und dazwischen das machen, was immer du möchtest.
Zeichne es mit dem Recorder auf, das ist erstmal eine akzeptable Grundlage für dein Vorhaben.

Gruß, MCO


  

Betrifft: UserInterfaceOnly AW: Wachsendes Tabellenblatt von: Klaus M.vdT.
Geschrieben am: 13.11.2012 14:45:16

Hallo Ralf,

schütze dein Blatt nicht mit dem Button / Menüpunkt "Blatt schützen", sondern mit diesem Makro:

Sub Schutz()
ActiveSheet.Protect UserInterfaceOnly:=True
End Sub
jetzt bleibt der User draussen, aber VBA darf spielen.

Grüße,
Klaus M.vdT.


  

Betrifft: UserInterfaceOnly AW: Wachsendes Tabellenblatt von: Ralf
Geschrieben am: 13.11.2012 20:29:19

Hallo Marc, Klaus

Der Blattschutz ist nicht prioritär - wir lassen ihn einmal aussen vor und konzentrieren uns auf die eigentliche Aufgabenstellung.

Mit Gruss
Ralf


  

Betrifft: UserInterfaceOnly AW: Wachsendes Tabellenblatt von: Klaus M.vdT.
Geschrieben am: 14.11.2012 08:15:33

Hi Ralf,
aus deiner Eingangsfrage ging hervor, dass gerade der Blattschutz das Problem ist. Der Rest deiner Aufgabe erzeugt bei mir leider nur "Bahnhof" ... Vergiss bitte nicht, dass DU zwar genau weisst was du möchtest aber die allerwenigsten hier deine Tabelle sehen können.

Gesucht wird nach einer VBA-Funktion,
Ok ..

die zwischen zwei Zeilen [bei gesetztem Blattschutz] eine neue Zeile einfügt,
Ohne Blattschutz .. zwischen welchen Zeilen? Zwei zufälligen Zeilen? Der letzten und der vorletzten Zeile? Oder immer zwischen Zeile 38 und Zeile 39?

wenn in einer Zelle der oberen Zeile ein Eintrag erfolgt ist.
in irgendeiner Zelle irgendein Eintrag?

Die Zellen (über n Spalten) der neue Zeile sollen die gleiche Formatierung und Funktionseinträge aufweisen wie die beiden Zeilen.
EEEEHm ... ja. Ich versuchs mal in verständlich zu übersetzen: Die Formatierung der neu eingefügten Zeile soll der restlichen Tabelle entsprechen. Richtig? (was mache ich, wenn die beiden zufälligen Zeilen von oben unterschiedliche Formatierungen haben?)

Auf diese Weise soll das Tabellenblatt kontinuierlich gemäss Bedarf wachsen und nicht vordefiniert mit n Zeilen und dem Zwang punktuell wieder eine grössere Anzahl Zeilen hinzuzufügen.
Übersetzt: Du magst das Blatt genau so groß haben wie dus grad brauchst.

Ralf, ich helf dir hier gerne. Aber bitte lad mal eine Beispieltabelle hoch, am besten sind da drin die Zelle(n) der oberen Zeile, die dass Zeilen-Einfügen auslösen wenn ein Eintrag erfolgt zB gelb markiert. Wo du die neue Zeile hin haben willst markierst du bitte auch gelb.

wir lassen ihn einmal aussen vor und konzentrieren uns auf die eigentliche Aufgabenstellung
Wir :-) haben noch eine Frage, nicht böse gemeint: Was machst du beruflich? Ich tippe auf EU-Bürokrat, oder Lateinlehrer?

Grüße,
Klaus M.vdT.


  

Betrifft: UserInterfaceOnly AW: Wachsendes Tabellenblatt von: Ralf
Geschrieben am: 14.11.2012 11:17:03

Errasse humanum est, sed in errare perseverare diabolicum

Guten Tag Klaus

Anstelle von 20 +/- Zeilen identischer Formatierung und Funktionsinhalte über 8 +/- Spalten (in Zellen einer Spalte könnten eine Verweisfunktion, in jenen einer anderen eine einfache Additionsfunktionen angelegt sein), soll es nur zwei Zeilen A & B geben.
Erfolgt in einer Zelle von Zeile A ein Zahleneintrag, wird eine weitere Zeile C mit Formatierung von Zeile B zwischen Zeilen A und B eingefügt. Ein Zahleneintrag in C löst die Einfügung von D zw. C und B aus. Diesen Ablauf bezeiche ich als 'wachsendes Tabellenblatt'.

Mit Gruss
Ralf


  

Betrifft: noch mehr Bahnhof. von: Klaus M.vdT.
Geschrieben am: 14.11.2012 11:37:24

Hi,

Zeile A
A ist aber eine Spalte.

Warum hälst du es so abstrakt? Sag doch einfach: In "Spalte A, ab Zeile 3".
Lad bitte eine Musterdatei hoch, das sagt mehr als 1000 Worte.

Grüße,
Klaus M.vdT.


 

Beiträge aus den Excel-Beispielen zum Thema "Wachsendes Tabellenblatt"