Hilfe Erweiterung Überprüfung im Code

Betrifft: Hilfe Erweiterung Überprüfung im Code
von: Mani
Geschrieben am: 10.10.2020 19:18:51
Guten Abend,
ich bräuchte noch mal eure Hilfe.
Ich habe folgenden Code um Daten einzufügen:
Sub Einfügen()
Dim Q_x&, Z_X&, wksQ As Worksheet, wksZ As Worksheet
Dim MyRow&, MyCol&, x&
Dim Artikel$, Menge&, Woche$ 'hier ist Artikel als String deklariert
Set wksQ = ThisWorkbook.Worksheets("start")
Set wksZ = ThisWorkbook.Worksheets("ziel")
For Q_x = 2 To 20 'Schleife Zellen 2-20 aus "Start" in Spalte(A)
If wksQ.Cells(Q_x, 4) = "x" Then 'wenn in Spalte(D) ein x steht Variabeln mit Inhalt füllen
Artikel = wksQ.Cells(Q_x, 1) 'aus Spalte(A)
Menge = wksQ.Cells(Q_x, 2) 'aus Spalte(B)
Woche = wksQ.Cells(Q_x, 3) 'aus Spalte(C)
For Z_X = 3 To 10 'Artikel suchen
If wksZ.Cells(Z_X, 1) = Artikel Then
MyRow = Z_X 'Zeile merken
For x = 2 To 54 'Woche suchen
If wksZ.Cells(2, x) = Woche Then
MyCol = x
wksZ.Cells(MyRow, MyCol) = wksZ.Cells(MyRow, MyCol) = Menge
End If
Next
End If
Next
End If
Next
End Sub
Ich müsste jetzt noch eine Überprüfung einbauen .
Wenn in der Zieltabelle schon ein Wert steht soll dieser nicht überschrieben werden .
Allerdings habe ich keine Ahnung wie ich das anstellen soll.
Könntet ihr mir nochmal helfen?
Vielen Dank
Gruß der Manni

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: Hajo_Zi
Geschrieben am: 10.10.2020 19:29:38
Hallo Manni
If wksZ.Cells(2, x) = "" Then
If wksZ.Cells(2, x) = Woche Then
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
änderrn.
Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.
http://www.excel-ist-sexy.de/bilder-statt-datei/
Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.
Das ist nur meine Meinung zu dem Thema.


Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: Mani
Geschrieben am: 10.10.2020 19:56:48
Hallo Hajo ,
schonmal ein dickes Dankeschön...
Sobald ich zu Hause bin werde ich es ausprobieren
Gruß aus Hamburg,
der Manni

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: Mani
Geschrieben am: 11.10.2020 13:01:53
Hallo ,
ich habe irgendwie noch ein Fehler drin.
Nach Hajo's Vorschlag habe ich es jetzt so geändert:
Sub Einfügen()
Dim Q_x&, Z_X&, wksQ As Worksheet, wksZ As Worksheet
Dim MyRow&, MyCol&, x&
Dim Artikel$, Menge&, Woche$ 'hier ist Artikel als String deklariert
Set wksQ = ThisWorkbook.Worksheets("start")
Set wksZ = ThisWorkbook.Worksheets("ziel")
For Q_x = 2 To 20 'Schleife Zellen 2-20 aus "Start" in Spalte(A)
If wksQ.Cells(Q_x, 4) = "x" Then 'wenn in Spalte(D) ein x steht Variabeln mit Inhalt füllen
Artikel = wksQ.Cells(Q_x, 1) 'aus Spalte(A)
Menge = wksQ.Cells(Q_x, 2) 'aus Spalte(B)
Woche = wksQ.Cells(Q_x, 3) 'aus Spalte(C)
For Z_X = 3 To 10 'Artikel suchen
If wksZ.Cells(Z_X, 1) = Artikel Then
MyRow = Z_X 'Zeile merken
For x = 2 To 54 'Woche suchen
If wksZ.Cells(2, x) = "" Then
If wksZ.Cells(2, x) = Woche Then
MyCol = x
wksZ.Cells(MyRow, MyCol) = wksZ.Cells(MyRow, MyCol) = Menge
End If
End If
Next
End If
Next
End If
Next
End Sub
Jetzt werden mir gar keine Daten übertragen.
Kann mir einer helfen was ich falsch gemacht habe ?
Vielen Dank
Gruß der Manni

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: ralf_b
Geschrieben am: 11.10.2020 13:37:31
If wksZ.Cells(2, x) = "" überprüft nicht die Zielzelle oder, sondern die Zelle wo die Wochennummer drinsteht. Und die ist ja nicht leer.

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: Mani
Geschrieben am: 11.10.2020 13:42:00
Hallo Ralf ,
ja jetzt wo du es sagst ....
Ich finde nur keinen Ansatz wie ich die Zielzelle auf leer überprüfe.
Das überfordert gerade mein jetziges können.
Könnte ihr mir dabei helfen ?
Danke
Gruß der Manni

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: ralf_b
Geschrieben am: 11.10.2020 13:57:45
MyCol = x
wksZ.Cells(MyRow, MyCol)
MYcol = x d.h. MYcol ist bereits über der Prüfung bekannt
nimm diese Prüfung
If wksZ.Cells(MyRow, x) = "" Then

Betrifft: AW: Hilfe Erweiterung Überprüfung im Code
von: Mani
Geschrieben am: 11.10.2020 14:11:23
Vielen Dank
Gruß der Manni

Betrifft: gern geschehen owT
von: ralf_b
Geschrieben am: 11.10.2020 14:12:43