Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
860to864
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
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilen anfügen und füllen per UserForm-Eingabe

Zeilen anfügen und füllen per UserForm-Eingabe
17.04.2007 12:50:41
Flo
Hi zusammen, brauch euren fachmännischen Rat! Habe in meine UserForm1 einen Befehlsbutton namens „Artikel einlagern“ eingefügt. Wenn nun dieser Button gedrückt wird, soll folgendes geschehen. Eine neue Userform mit den Abfragen-Punkten „Artikel-Nr.“, „Einlagerungs-Datum“, „Menge“ und „Anzahl der Positionen“ soll geöffnet werden (soll jeweils über Textfeld befüllbar sein). Bei der Eingabe der Artikel-Nr. im entsprechenden Feld soll das Makro diesen in allen geöffneten Arbeitsmappen suchen bis es ihn gefunden hat. (Habe zum Suchen schon ein Makro, dass evtl. in die Lösung mit eingebaut werden könnte!) Das größere Problem kommt jetzt erst. Anschließend soll gem. des Eintrages in „Anzahl der Positionen“ bis zur ersten leeren Zeile gegangen werden und dann dementsprechend viele Zeilen eingefügt werden (die vorhanden Formeln in der ersten freien Zeile (+ die der darüber liegenden Zeile) sollen übernommen werden). Der Eintrag in „Einlagerungs-Datum“ soll dann in allen Zeilen in Spalte B und bei „Menge“ in allen Zeilen in Spalte C übernommen werden, sobald der Benutzer seine Eingaben in den Textfeldern gemacht und den Button "Einlagern" gedrückt hat. Ist ziemlich kompliziert, oder? Wenn das jemand hinkriegen sollte, zücke ich meinen imaginären Hut vor Hochachtung! Wäre euch für eure Hilfe sehr dankbar!
Hier mein Such-Makro:

Public Sub Suchen()
Dim WB As Workbook
Dim strInbox As String
Dim zelle As Range
Dim intWks As Integer
Dim Wahl As String
Dim FirstAddress
Dim bln As Boolean
strInbox = InputBox("ARTIKELSUCHE")
If strInbox = "" Then
Exit Sub
End If
For Each WB In Workbooks
WB.Activate
For intWks = 1 To ActiveWorkbook.Sheets.Count
With Worksheets(intWks).UsedRange
Set zelle = .Find(strInbox, LookIn:=xlValues)
If Not zelle Is Nothing Then
FirstAddress = zelle.Address
bln = True
Do
Worksheets(intWks).Select
zelle.Select
Wahl = _
MsgBox("[ " & strInbox & " ] gefunden in: " & vbCr _
& vbCr & "Mappe: " & WB.Name _
& vbCr & "Tabelle: " & Worksheets(intWks).Name _
& vbCr & " Zelle: " & zelle.Address(0, 0) _
& vbCr & vbCr & "Weitersuchen?", vbYesNo)
If Wahl = vbNo Then
Set zelle = Nothing
Exit Sub
End If
Set zelle = .FindNext(zelle)
Loop While Not zelle Is Nothing And zelle.Address  FirstAddress
End If
End With
Next intWks
Next WB
If bln = False Then
MsgBox "Der Suchbegriff [" & strInbox & "] wurde nicht gefunden."
End If
Set zelle = Nothing
Workbooks.Activate
End Sub


Vielen Dank schon mal für euer Bemühen!
Grüße
Flo07

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen anfügen und füllen per UserForm-Eingabe
18.04.2007 10:25:00
Flo
Hi Forum, da ich leider bisher keinen Lösungsvorschlag für mein Problem gekriegt habe, versuch ich mal das Thema etwas zu vereinfachen. Die Userform mit den Textboxen beinhaltet, wie bereits erwähnt, die Punkte Artikel-Nr., Einlagerungsdatum, Menge je Position und Anzahl der Positionen. Nachdem alle Felder vom Benutzer gefüllt wurden und der Command-Button „Artikel einlagern“ gedrückt wurde, soll zuerst nach den eingegebenen Artikel in allen geöffneten Arbeitsmappen gesucht werden (Ein Such-Makro das in die Lösung mit eingebaut werden könnte, hab ich bereits, siehe oben). Bei einem Treffer springt der Cursor ,unter Verwendung des Such-Makros, sowieso in die gesuchte Zelle. Von dort an, soll 3 Zeilen weiter gegangen werden und genau so viele Zeilen eingefügt werden, wie in die Textbox bei Anzahl der Positionen eingegeben wurde. Die Benutzereingaben in „Einlagerungsdatum“ soll in jeder eingefügten Zeile in Spalte B wieder zu finden sein. Die Eingabe in „Menge je Position“ soll die Spalte C der eingefügten Zeilen füllen. Wenn mir jemand bis dahin helfen könnte, wäre schon super!
Die Formeln in den Spalten E, F und G müssen halt dann manuell kopiert und eingefügt werden! Vielleicht kann man ja in das Makro die Formeln schon gleich mit einbauen?
(i. d. F. Zeile 7) Formel in Spalte E: =wenn((D7=““);““;C7); Formel in Spalte F: =wenn((D7=““);C7;C7-E7); Formel in Spalte G: =WENN(UND(A7="";B7="";C7="";D7="");"";WENN((D7="");$F$1-B7+1;D7-B7+1))

Anzeige
AW: Zeilen anfügen und füllen per UserForm-Eingabe
18.04.2007 15:12:00
Flo
Bitte helft mir!:)

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige