4.3k Aufrufe
Gefragt in Tabellenkalkulation von benjaminm Mitglied (631 Punkte)
Hallo @ all

Da mein letzter Thread schon etwas länger ist,
www.supportnet.de/t/2192856
Hier nun noch mal meine Anfrage gesondert:

Neu(es) Frage/umsetzungs Problem...

Ich möchte gerne ein Saldo (eine art Kontoauszug) aus diesem Paletten-Konto erstellen.(Datei s.u.)

Dazu dachte ich mir das ich das Datum in eine Zahl umwandle und anhand der Zahlen die Monate zuordne und diese dann jeweils in einem neuen Tabellenblatt( Jan.;Feb.;März;April;Mai usw.)übertrage.
Z.B.

BlattDez.08 Zelle A2
=wenn(und(Pal.Ausgang!L3>39783;Pal.Ausgang!L3<39813)
;=Pal.Ausgang!A3:Pal.Ausgang!K3)


"Zahlenwert für 01.12.08-31.12.08",
aber so funzt die Formel nicht, und ich habe gerade keinen Plan wie ich das umsetzen soll!

Gibt es eine Möglichkeit , anhand der DatumsZahl diese einem Tabellenblatt zuzuordnen, und bei übereinstimmung der Werte eine ganze Zeile aus einem TabellenBlatt in ein neues(z.B. Montasblatt)zu kopieren?

Ich hoffe es ist zu Verstehen.

Hier noch mal die Datei

[*][sup]
*Threadedit* 12.01.2009, 13:23:21
Admininfo: Führ bitte Threads nicht fort indem du Weitere eröffnest, und vermeide Mehrfachanfragen. Die Datenbank und User werden es dir danken. Siehe FAQ 2, #3.
[/sup]

12 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

was du da genau vorhast , kann ich mir anhand der Formel nicht richtig erklären. Die Formel kann so aus meiner sich nicht funktionieren.

=wenn(und(Pal.Ausgang!L3>39783;Pal.Ausgang!L3<39813); bis hierher klar
=Pal.Ausgang!A3:Pal.Ausgang!K3 was soll der Teil bewirken? Zudem die 2 Aussage zu wenn fehlt
) wieder klar

Dein link führt zu keiner Datei, sondern nur in den Uploadbereich

Gruß

Helmut
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
Sorry,

Hier jetzt die Datei erneut.

Wenn du dir die Datei ansiehst, verstehst du hoffentlich!

Ich möchte nach einer Abfrage eines Zahlenbereiches (z.B.39783-39813 entspricht Monat Dez.08)
die Zellen vor dem Zahlenwert(umgewandeltes Datum)
in ein neues Tabellenblatt einfügen.

z.B. in der Datei von "Pal.Ausgang L3" --übereinstimmung dann kopiere-- "Pal.Ausgang A3:K3" und füge ein in "Dez.08 A3:K3"

Ich komme mit der "Wenn(und(-Formel" aber nur bis zur Abfragen, und alles hinter der Ersten ")" funktioniert nicht. (denke ich hab da nicht das richtige, oder das geht überhaut nicht & man kann das nur über VBA lösen.)

Im VBA bin ich noch nicht so gut, ich kann mit einzelne Parts hantieren und mir anpassen, aber mir fehlen die Ansätze zum Programmieren um sollche Dinge zu lösen.

Somit weiß ich nicht wie ich da mit VBA rangehen soll.
Wenn du eine Lösung hast/findest wäre ich dir sehr verbunden.

Danke vorerst
Gruß Benjae
0 Punkte
Beantwortet von
Hallo Benjamin,
Code in Tabelle Pal.Ausgang einfügen.
Spalte A wird nach Monat Januar abgefragt und dann die ganze Zeile automatisch in die Tabelle Jan.09 eingetragen.


Gruß
fedjo


Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zfrei As Long
If Target.Column = 1 And Cells(Target.Row, Target.Column) <> "" Then
If Month(Cells(Target.Row, 1)) = 1 Then
Zfrei = Sheets("Jan.09").Cells(65536, 1).End(xlUp).Row + 1
Sheets("Jan.09").Range("A" & Zfrei & ":L" & Zfrei) = _
Sheets("Pal.Ausgang").Range("A" & Target.Row & ":L" & Target.Row).Value2
End If
End If
End Sub
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

seh mal hier nach ob es deinen Vorstellungen entspricht

rapidshare.com/files/182533694/Hst-Schenker_EuroPal.Pool2.xls.html

Gruß

Helmut
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
@Helmut,

kannst du mir die Wenn-Formel erklären?
Damit ich sie anpassen kann.

Sonst (wenn ich das verstehe/erklärt bekomme) ganz gut.

Gruß Benjae
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

ich gehe davon aus, dass du diese Formel meinst

=WENN(ISTFEHLER(SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;1;FALSCH));"";WENN(SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH)=0;"";SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH)))


Setzt sich wie folgt zusammen

=WENN(
ISTFEHLER(SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;1;FALSCH)) -> Abfrage ob Datum vorhanden, da es bei fehlendem Datum zur Fehlermeldung kommt

;""; -> bei Fehler diese Ausgabe
WENN( -> ohne Fehler hier weiter
SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH)=0 -> Abfrage ob der Wert in der Spalte =0 ist

;""; ->dann Ausgabe des Leerfeldes
SVERWEIS($A4;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH) -> Ausgabe der Daten des entsprechenden Feldes

) -> scliessen der 2. Wenn-Funktion
) -> scliessen der 1. Wenn-Funktion

Gruß

Helmut
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
Hallo Helmut,

danke für deine Erklärung.
(ist das eine sogenante Matrix Abfrage?)

Hab nur schon wieder ein Problem.
...
habe deine Formel so übernommen für den Januar(funtz),
und möchte jetzt im selben Tabellen-Blatt(Januar) die gleiche Abfrage aus dem Tabellen-Blatt "Pal.Eingang" machen.
Ausgabe soll in Jan. M4 beginnen.

Nur wenn ich die Formel dort reinkopiere und die Werte anpasse,
kommt nach Anwendung, die Meldung in den Zellen "#Bezug!"

hier deine Formel:
=WENN(ISTFEHLER(SVERWEIS($A5;Pal.Ausgang!$A$3:$K1001;1;FALSCH));"";
WENN(SVERWEIS($A5;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH)=0;"";
SVERWEIS($A5;Pal.Ausgang!$A$3:$K1001;SPALTE();FALSCH)))

hier die von mir abgewandelte Formel:
=WENN(ISTFEHLER(SVERWEIS($L5;Pal.Eingang!$A$3:$K1002;1;FALSCH));"";
WENN(SVERWEIS($L5;Pal.Eingang!$A$3:$K1002;SPALTE();FALSCH)=0;"";
SVERWEIS($L5;Pal.Eingang!$A$3:$K1002;SPALTE();FALSCH)))


Sobald ein Wert in der Matrix gefunden ist, wie gesagt:
"zeigt die Zelle "#Bezug!""
Was ist jetzt falsch an der Abwandlung?
Könntste noch mal schaun?

Danke schön
Benjae
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

hier die Tabelle mit der Ergänzung

rapidshare.com/files/184203524/Hst-Schenker_EuroPal.Pool2.xls.html

für die folgenen Monate, einfach tabelle auf das neue Blatt kopieren und dann das Datum vom ersten Tag entsprechend ändern


Gruß

Helmut
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
Supi danke,

Aber was hast du jetzt gemacht?

Der Wert hinter Spalte() geändert auf(F7) wie ergibt sich das?

Ich möchte das gerne verstehen.

Gruß Benjae
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

damit in ich in beiden fällen auf die richtige Spalte komme, habe ich mich auf eine Bezugsspalte festgelegt. Im ersten Bereich für die Palletenausgänge hat es eigentlich mit Spalte() gereicht, daes sich um die gleiche Spalte handelt, aber bei den Eingängen, ab Spalte M handelt es sich um Daten aus den Spalten B bis ... , daher habe ich über die Angabe Spalte(B3) usw die Angaben nach vorne verschoben.

Gruß

Helmut
...