Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1048to1052
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilen automatisch einfügen, wenn

Zeilen automatisch einfügen, wenn
14.02.2009 23:23:00
John
Hallo,
ich habe folgendes Problem.
ich erstelle gerade eine xlsDatei, in der Bestellungen eingegeben werden können. Die Anzahl der möglichen Bestellungen kann ich nicht abschätzen. Somit fällt die Option des einfachen DropDown.
In Spalte A werden die Bestellnummern eingegeben (A10 ist die erste Position), in Spalte AA wird ein Betrag angegeben, der mit Hilfe der Summenformel aus bestimmten Spalten in der entsprechenden Zeile ermittelt wird (AA10 enthält die erste Summe)
Wie muss ich den VBA - Befehl schreiben, dass bei Eingabe einer Bestellnummer in A10 automatisch eine neue Zeile eingefügt wird (also die neue Zeile ist dann A11). Die Summenformel in AA10, die die Summe für die Zeile 10 angibt, soll in die neu eingefügte Zeile A11 übernommen werden (die soll natürlich die Summe der Zeile 11 wiedergeben).
Wenn ich dann eine Bestellnummer in A11 eingebe, soll wieder eine neue Zeile eingefügt werden.
Ich danke schon mal für eure Hilfe

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen automatisch einfügen, wenn
14.02.2009 23:58:00
Josef
Hallo John,
am einfachsten geht das, wenn man genügend Zeilen sozusagen auf Vorrat anlegt und diese ausblendet.
Bei Bedarf blendet man dann die Zeilen wieder ein.
Du kannst deine Datei hochladen, dann schau ich mir das an.
Gruß Sepp

AW: Zeilen automatisch einfügen, wenn
15.02.2009 00:17:00
Uwe
Hi,
ich denke, das klappt am Beste mit einem Klassenmodul Worksheet_Change und AutoFill. Aber Sepp hat recht, mit einer hochgeladenenen Beispieldatei kann Dir bestimmt besser geholfen werden.
Gruß
Uwe
(:o)
AW: Zeilen automatisch einfügen, wenn
15.02.2009 17:59:00
Daniel
Hi
man könnte es z.B. über dieses Makro lösen, das Makro muss ins Modul des Tabellenblatts:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row  1 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
Application.EnableEvents = False
If Target.Value = "" Then
Cells(Target.Row, "AA").Value = ""
Else
Cells(Target.Row, "AA").FormulaR1C1 = Range("AA10").FormulaR1C1
End If
Application.EnableEvents = True
End Sub


die Formel muss allerdings schon in AA10 stehen, da diese kopiert wird.
dh. sollte sich die Formel ändern, brauchst du das Makro nicht anpassen.
Gruß, Daniel

Anzeige
AW: Zeilen automatisch einfügen, wenn
16.02.2009 19:12:00
John
Danke erst mal für die Hilfen, aber ich habe ein paar Dinge dann doch selber lösen können. Natürlich wie es so ist, treten neue Probleme auf. Um euch das aber zu veranschaulichen, habe ich meinen VBA Code mal unten angeführt:
Option Base 1

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Zeile As Long
Zeile = activecell.Row
If Target.Row  1 Then Exit Sub
If activecell = 1 Then
activecell(activecell + 1, 1).EntireRow.Insert                                       _
Range(Cells(Zeile + 1, "G"), Cells(Zeile, "J")).FillDown
End If
End Sub


Das Makro funktioniert so weit, wenn ich in eine entsprechende Zeile der Spalte A eine 1 eingebe. Es wird aber erst ausgeführt, wenn ich mit den Pfeiltasten oder mit der Maus die Zelle mit der 1 auswähle.
Ich hätte gerne, dass das Makro ausgeführt wird, wenn man die Zelle in der die 1 eingetragen wird verlässt (also, wenn man in eine andere Zelle geht).
Dann was eig noch viel wichtiger ist, eigentlich soll in die Zellen der Spalte A (diese sind ja die die bedingeung für das Makro) Bestellnummern eingetragen werden. D.h. wenn in der activecell (Spalte A) eine Bestellnummer steht ( in Form von : 290198) soll Then ausgeführt werden.
Es gibt doch irgendeine IsNumeric funktion um zu prüfen, ob die Eingabe numerisch ist.
Dann wäre es noch schön, wenn das makro pro Zelle nur einmal ausgeführt wird. Also wenn die Bestellnummer in einer Zelle eingegeben worden ist, dass das Makro dann nur einmal für diese Zelle ausgeführt wird.
So, das wars erst mal, ich hoffe das ihr wisst was ich noch brauche.
Tausend dank für eure Tips

Anzeige
AW: Zeilen automatisch einfügen, wenn
16.02.2009 19:37:00
Josef
Hallo John,
das kann man doch alles ohne VBA nur mit Bordmitteln lösen.
Hier ein Beispiel unter Verwendung der Listen-Funktion (> Daten > Liste)
https://www.herber.de/bbs/user/59514.xls
Gruß Sepp

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige