Excel Problem - über "Wenn-Dann" Funktion neue Zeile einfügen lassen

Excel Chart - (Funktion, Microsoft Excel, Wenn-Dann)

2 Antworten

mach doch eine Liste mit allen Wochen und lasste abgleichen, wenn die Woche auch in der gekürzten Liste auftraucht dann die Wochennummer sonst Null...

Zeilen Einfügen ist eine Veränderung der Arbeitsblattstruktur, das geht nur mit einem Makro:

Sub ZeileEinfügenWennDiffGrößer1()
Dim C
For Each C In Selection
If Val(Left(C.Offset(1, 0).Value, 2)) - Val(Left(C.Value, 2)) > 1 And C.Value <> "" Then C.Offset(1, 0).EntireRow.Insert
Next
End Sub
'bei dieser Syntax kein Zeilenumbruch nach Then !

Markiere vorher den gesamten zu bearbeitenden Bereich der bestimmenden Spalte. Das Makro fügt immer nur EINE Zeile ein, wenn also die Woche von zB 15.2014 nach 18.2014 springt, muss es dreimal drüberlaufen, vorher aber jedesmal die fehlende Woche ergänzen=Leerzeilen füllen (da ist es dann vllt besser, mitzudenken und solche Fälle manuell zu bearbeiten).

Anweisung zur Installation eines Makros:

Klicke mit der RMT auf die Blattnamensfahne(hängt unten am Blatt) und wähle aus dem Kontextmenü "Code anzeigen". Es öffnet sich der VBA-Editor. Im Menü EINFÜGEN wählen: MODUL, [Es erscheint ein (fast) leeres Makroblatt (wahrscheinlich steht oben Option Explicit, das lässt Du drin stehen und gehst mit dem Cursor unterhalb rein).] Kopiere da hinein das obige Sub:.. (heisst Sub, weil es xl untergeordnet ist, Abk. f. Subroutine, auch mit Unterschleife übersetzbar) _ Geh ins Blatt zurück. Mit

Alt+F8

erhältst Du eine Liste der verfügbaren Makros. Bei Fehlfunktion (zB, wenn sichs aufhängt, also endlos läuft): Esc oder Strg+Pause(Break).


mrmister1978 
Beitragsersteller
 01.06.2014, 20:12

Wow, na das war ja mal eine Antwort :-) Vielen, lieben Dank, von mir und auch von meiner Freundin, wir werden das gleich morgen Abend mal testen und Dir schreiben ob es so funktioniert hat.

Vielen Dank nochmal und noch einen schönen Abend.

Iamiam  02.06.2014, 00:30
@mrmister1978

Für sehr lange Listen:
die nächste neu eingefügte Zeile (leere Zelle) findet man mit

Ende ↓

auch das anfängliche Marlieren geht so: oberste gefüllte Zelle auswählen, Shift gefrückt halten und Ende ↓ -ggf mehrmals-, wenn schon Leerzellen dazwischen sind. Wenn zu weit markiert, weiterhin shift drücken und Ende ↑

Iamiam  02.06.2014, 00:37
@Iamiam

ich hab übrigens nicht nachgeprüft, ob das bis ganz unten durchläuft, es könnte sein, dass xl die ZellListe anfangs festlegt und nicht um die eingefügte Zeilenzahl erweitert, selber nachprüfen!