Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Suchfeld mit Textfenster in eine Dynamische Tabelle erstellen
#41
ich sehe keine Veränderungen, es werden immer noch alle Zellen angezeigt wo die gleiche werte drin stehen???

Ich möchte daß das Makro von in Zelle A16 beginnt mit der suche der eingegebene Werte, Makro muss quer also in eine Zeile bis AX16 suchen, wenn er z.b. in D16 fündig geworden ist, dann soll er die Suche abschließen und in die A17 wechseln, hier soll die Prozedur wiederholt werden und so weiter bis er die gesamte Tabelle durch hat
Antworten Top
#42
Hallöchen,


Da musst Du mal schauen, ob Deine Logik mit dem xErste und DoUntil stimmt. Der Code geht jetzt auf jeden fall erst mal zeilenweise durch, sucht pro Zeile nur 1x und geht nach Deinen Aktionen in die nächste Zeile.
Am Besten, setze bei der ersten Analyse einen Haltepunkt bei xErste = …, schaue was da drin steht und gehe dann mit F8 schrittweise weiter. Dein Array wird auf jeden Fall mit Werten aus dem Bereich Spalte 4 bis Spalte 51 gefüllt, auch wenn der erste Treffer in der Zeile vorher kam.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • Pirat2015
Antworten Top
#43
Auch Hallo,

mir sind bei deinem bruchstückhaften Code zwei Dinge aufgefallen

Code:
Set rng = Worksheets(iCounter).Rows(iCnt).Find _
            (xSuche, after:=Rows(iCnt).Cells(1, 25000), lookat:=Suchart, LookIn:=xlValues)

seit der Version hat Excel 16.384 Spalten, Du willst aber 25.000 Spalten

Code:
With Worksheets(iCounter)
                    Set rng = .Cells.FindNext(after:=rng)

oben suchst Du zeilenweise, den nächsten Treffer aber im gesamten Tabellenblatt.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#44
Ich habe das  xErste und DoUntil entfernt und jetzt funktioniert wie gewünscht, Danke für deine Hilfe


Wenn ich nur in eine Tabelle suchen möchte muss ich doch hier
Code:
For iCounter = 1 To ThisWorkbook.Sheets.Count
einfach in akctive sheet umwandeln aber wenn ich da mache kommt ein Fehler.
und wen ich die Daten ausgeben habe muss ich das Makro manuell beenden, kann ich das auch Automatisch machen?
Antworten Top
#45
Hallo,

Zitat:... einfach in akctive sheet umwandeln aber wenn ich da mache kommt ein Fehler.

ganz einfach, der Fehler kommt, weil es sich nun nicht mehr um eine Schleife handelt, denke ich.
Da Du nicht auf die Idee gekommen bist, uns Deine Änderungen genauer mitzuteilen, bleibt Alles nur Raterei.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#46
Hallöchen,

Du hattest den Schleifenzähler ja mal korrekt verwendet, z.B.
For iCounter = 1 to ...
Worksheets(iCounter)
usw.

Wenn Du mit ActiveSheet arbeitest, musst Du schauen, wo überall das Sheet mit dem iCounter verwendet wurde.

einfach in akctive sheet umwandeln aber wenn ich da mache kommt ein Fehler.

ist auch nicht gerade aussagekräftig. Wenn Du es so programmiert wie Du es hier geschrieben hast, würde ich 2 Syntaxfehler ansprechen. Zum einen ist ein k Zuviel und zum anderen ein Leerzeichen Smile

Übrigens hatte ich vorgeschlagen:
… after:=Rows(iCnt).Cells(1, 1) …

Das wäre in der Zeile iCnt die Zelle in Spalte A
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • Pirat2015
Antworten Top
#47
Hallo Schauan,

Vielen Dank für deine Unterstützung, funktioniert alles wunderbar.
Antworten Top
#48
Hallo Zusammen,

mir ist jetzt aufgefallen, daß wenn mehrere Personen bei mir die Sachen anfordern ich manchmal durcheinander kommen.
Bei Ausgabe der Materialien wird zwar in bestimmte Zelle das Anforderung datum kreiert aber wenn z.b. 10 Personen es machen, dann wird es unübersichtlich.

Anbei der Code für die Ausgabe der Daten:

Code:
Dim iCounter, xCounter As Long
Set wkb1 = ThisWorkbook
Set wkb2 = Workbooks.Add(1)
Set wks2 = wkb2.Sheets(1)
wkb1.Activate
For iCounter = 0 To ListBox1.ListCount - 1
   If ListBox1.Selected(iCounter) And xOpt = 1 Or xOpt = 2 Then
       Set XBlatt = Sheets(ListBox1.List(iCounter, 0))
       XZeile = Range(ListBox1.List(iCounter, 1)).Row
       XBlatt.Cells(XZeile, 54).Value = Date
       xCounter = xCounter + 1
       XBlatt.Range("G" & XZeile & ",H" & XZeile & ",K" & XZeile & ",R" & XZeile & ",S" & XZeile & ",T" & XZeile & ",AJ" & XZeile & ",AK" & XZeile & ",AL" & XZeile & ",AU" & XZeile & ",AV" & XZeile & "").Copy wks2.Cells(xCounter, 1)
   End If
Next iCounter
wks2.Activate

das Ausgabe datum ist ja schon drin --> XBlatt.Cells(XZeile, 54).Value = Date

jetzt will ich das auch Parallel eine Fortlaufende Nummer mit erstellt wird aber bezogen immer auf das Datum.
Bsp. Am 16.11.2018 werden 3 Unterschiedlichen Material Anforderungen gestellt
Anforderung 1 --> 5 Materialien
Anforderung 2 --> 10 Materialien
Anforderung 3 --> 15 Materialien
Dann kommt  in Zelle 54 bei alle Materialien 16.11.2018 und z.b Zelle 55
bei 5 Materialien 1
bei 10 Materialien 2
bei 15 Materialien 3
also einfach fortlaufende Nummer, wenn jetzt am 17.11.2018 neue Anforderungen kommen, dann kommt als Datum 17.11.2018 aber die Fortlaufende Nummer beginnt von vorne
Bsp. Am 17.11.2018 werden 3 Unterschiedlichen Material Anforderungen gestellt
Anforderung 1 --> 5 Materialien
Anforderung 2 --> 10 Materialien
Anforderung 3 --> 15 Materialien

Dann kommt  in Zelle 54 bei alle Materialien 17.11.2018 und z.b Zelle 55

bei 5 Materialien 1
bei 10 Materialien 2
bei 15 Materialien 3
Ich hoffe es ist verständlich
Vielen Dank vor ab
Antworten Top
#49
Man kann sich auch einlesen und sich selbst etwas bei bringen... hier mein Tip dazu..

https://www.youtube.com/results?search_q...lernvideos
Eine Menge reden, aber nichts sagen können viele...
Antworten Top
#50
das mit den Automatischen Nummerierung sollte kein problem sein.
Aber den Bezug zum Datum herzustellen da habe ich meine Probleme
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste