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

Datumsformat

Datumsformat
07.03.2003 12:00:20
manfred

VBA-Problem

Umsetzung eines Makros von Excel 5 nach Excel 2000


Unter Excel 2000 funktioniert folgendes nicht.
1.Ich habe eine Eingabemaske definiert über die neben anderen Feldern auch das lieferdatum eingegeben wird.
2.In einem zweiten Makro wird die unter 1. entstandene Tabelle ausgewertet. Es werden an Hand eines einzugebenen Datums die zu diesem Datum gehörenden Sätze rausgefiltert (Autofilter) und in ein zweites Tabellenblatt Kopiert und in diesem dann weiterverarbeitet. Ich habe jetzt folgendes Problem obwohl es daten sätze zu dem eingegeben Datum gibt werden diese nicht gefiltert. Ich nehme an das es ein Format problem gibt.

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Datumsformat
07.03.2003 12:20:57
Nepumuk

Hallo Manfred,
die Datumsübergabe an den Autofilter muss so aussehen:
Criteria1:=CDate(deinDatum)
Die Zellen müssen als Datum formatiert sein .

Gruß
Nepumuk

Re: Datumsformat
07.03.2003 13:44:33
manfred

Danke nepumuk

kannst Du mir vielleiht noch ein paar Informationen zu kommen lassen, ich habe noch nicht so große Kenntnisse von VBA wie muss ich das enigabefeld formatieren und wie das Vergleichsfeld.

mfg

MAnfred

Re: Datumsformat
07.03.2003 18:43:39
Nepumuk

Hallo Manfred,
wenn du den Teil des Codes hier in das Forum stellst, in dem der Autofilter gesetzt wird, dann kann ich dir bestimmt weiterhelfen. Desweiteren, schreibe mal wie das Datum in der Zelle angezeigt wird. Dann kann ich das selbst testen, ob es so funktioniert.
Gruß
Nepumuk


Anzeige
Re: Datumsformat
08.03.2003 12:16:08
nepumuk

Hallo Nepumuk.

Danke für deine Antwort hier folgen einige Befehlszeilen aus den entsprechenden Makros.

Es handelt sich um eine Excel5 Datei die jetzt unter Excel2000 laufen soll. Beim Konvertieren der Makros bin ich auf einige Fehler gestoßen die ich beheben konnte nur mit Datum klappt es nicht.

1. Eingabe Dialog zum Erfassen Lieferscheinen mit Lieferscheindatum


EDialogInitLeer:
EDialog.EditBoxes("KDNR").Text = ""
EDialog.EditBoxes("KFZ_NUM1").Text = "TF-KK"
EDialog.EditBoxes("KFZ_NUM2").Text = "0000"
EDialog.EditBoxes("LDAT").Text = ""
EDialog.EditBoxes("AUFTRNR").Text = ""

2. Überprüfung ob Datum richtig eingegeben wurde.

On Error Resume Next
ldatum = (EDialog.EditBoxes("LDAT").Text)

If Err = 13 Then
MsgBox ("Bitte überprüfen Sie das Lieferdatum")
GoTo EDialogInit
Else
On Error GoTo 0
End If

3.Ausgabe Lieferscheindatum in die Tabelle

[a1].Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Activate
Selection.EntireRow.Insert
ActiveCell.Value = ldatum

Das war das Makro in dem die Daten erfasst werden.

Jetzt folgt das Makro in dem die Daten entsprechend der Datumseingabe selektiert werden und weiter verarbeitet werden

4. Eingabe des Datums für die Selektion

EDialogInitLeer:
EDialog.EditBoxes("DRU_DAT").Text = ""

EDialogInit:
ok = EDialog.Show

If ok = False Then
Exit Sub
End If

On Error Resume Next
ldatum = (EDialog.EditBoxes("DRU_DAT").Text)

If Err = 13 Then
MsgBox ("Bitte überprüfen Sie das Druckdatum")
GoTo EDialogInit
Else
On Error GoTo 0
End If

5. Autofilter setzen und entsrechend dem Datum selektieren

drudat = Left(ldatum, 6)
Selection.AutoFilter Field:=1, Criteria1:=drudat

Ich hoffe Dir reichen die Angaben und du kannst mir helfen. Ich kann Dir auch noch mehr vom Makro schicken wenn Du noch benötigst.

Danke und Gruß Manfred



Anzeige
Re: Datumsformat
08.03.2003 12:18:30
manfred

Hallo Nepumuk.

Danke für deine Antwort hier folgen einige Befehlszeilen aus den entsprechenden Makros.

Es handelt sich um eine Excel5 Datei die jetzt unter Excel2000 laufen soll. Beim Konvertieren der Makros bin ich auf einige Fehler gestoßen die ich beheben konnte nur mit Datum klappt es nicht.

1. Eingabe Dialog zum Erfassen Lieferscheinen mit Lieferscheindatum


EDialogInitLeer:
EDialog.EditBoxes("KDNR").Text = ""
EDialog.EditBoxes("KFZ_NUM1").Text = "TF-KK"
EDialog.EditBoxes("KFZ_NUM2").Text = "0000"
EDialog.EditBoxes("LDAT").Text = ""
EDialog.EditBoxes("AUFTRNR").Text = ""

2. Überprüfung ob Datum richtig eingegeben wurde.

On Error Resume Next
ldatum = (EDialog.EditBoxes("LDAT").Text)

If Err = 13 Then
MsgBox ("Bitte überprüfen Sie das Lieferdatum")
GoTo EDialogInit
Else
On Error GoTo 0
End If

3.Ausgabe Lieferscheindatum in die Tabelle

[a1].Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Activate
Selection.EntireRow.Insert
ActiveCell.Value = ldatum

Das war das Makro in dem die Daten erfasst werden.

Jetzt folgt das Makro in dem die Daten entsprechend der Datumseingabe selektiert werden und weiter verarbeitet werden

4. Eingabe des Datums für die Selektion

EDialogInitLeer:
EDialog.EditBoxes("DRU_DAT").Text = ""

EDialogInit:
ok = EDialog.Show

If ok = False Then
Exit Sub
End If

On Error Resume Next
ldatum = (EDialog.EditBoxes("DRU_DAT").Text)

If Err = 13 Then
MsgBox ("Bitte überprüfen Sie das Druckdatum")
GoTo EDialogInit
Else
On Error GoTo 0
End If

5. Autofilter setzen und entsrechend dem Datum selektieren

drudat = Left(ldatum, 6)
Selection.AutoFilter Field:=1, Criteria1:=drudat

Ich hoffe Dir reichen die Angaben und du kannst mir helfen. Ich kann Dir auch noch mehr vom Makro schicken wenn Du noch benötigst.

Danke und Gruß Manfred



Anzeige
Re: Datumsformat
08.03.2003 12:20:25
Nepumuk

Hallo Manfred,
diese Zeile:
Selection.AutoFilter Field:=1, Criteria1:=drudat
ändern in:
Selection.AutoFilter Field:=1, Criteria1:=CDate(drudat)
wenn das Datum in der Tabelle als Datum formatiert ist, sollte der Autofilter die richtigen Daten herausfiltern.
Gruß
Nepumuk


Re: Datumsformat
08.03.2003 15:23:21
manfred

Hallo Nepumuk

habe die Zeile geändert aber ohne Erfolg.

wie formatiere zum Beispiel die Variable drudat als Datum.

Folgende Befehlsfolge habe ich jetzt im Makro zum Filtern.

Columns("A:A").Select
Selection.NumberFormat = "dd/mm/"

drudat = Left(ldatum, 6)
Selection.AutoFilter Field:=1, Criteria1:=CDate(drudat)
Selection.End(xlDown).Select
Selection.Subtotal GroupBy:=1, Function:=xlCount, _
TotalList:=Array(3), _
Replace:=True, PageBreaks:=False, _
SummaryBelowData:=True

Oder ist an der Befehlsfolge etwas falsch. Wenn ich nach Auftreten des Fehlers in die Tabelle mit den Daten wechsle steht unter der Überschriften Zeile die 32145.Zeile.


Das ist die Fehler Ausschrift die ich erhalte

Die Subtotal-methode des range Objektes konnte nicht ausgeführt werden


Gruß Manfred


Anzeige
Re: Datumsformat
08.03.2003 16:59:02
Nepumuk

Hallo Manfred,
diese Zeile: drudat = Left(ldatum, 6) habe ich vorhin übersehen. Was steht denn in der Variablen drudat drin? Eventuell 080303 für das heutige Datum? Dann kann das nicht funktionieren.
Das Datum in drudat muss für z.B. heute so: 08.03.2003 in der Variablen stehen.
Das Datum in den Zellen der Tabelle muss so: Columns("A:A").NumberFormat = "m/d/yyyy" formatiert sein.
Dann sollte es funktionieren.
Gruß
Nepumuk




Re: Datumsformat
08.03.2003 18:47:30
manfred

Hallo Nepumuk,

danke für Deinen Tip aber leider hat sich mein Problem noch nicht gelöst.

wenn ich mir den Inhalt einer Datumszelle aus der Tabelle ansehe steht z.B. 07.03.03 ohne Hochkomma drin

in der Variable DRUDAT steht das Datum folgendermassen drin
"07.03.2003"
wie kann ich die variable DRUDAT als Datum formatieren.

Gruß Manfred

Anzeige
Re: Datumsformat
08.03.2003 18:59:02
Nepumuk

Hallo Manfred,
so: drudat = Format(drudat,"dd.mm.yy")
Gruß
Nepumuk

Re: Datumsformat
09.03.2003 17:53:29
manfred

Hallo;

ganz dumme Frage wie kann ich Dir eine Datei schicken

Manfred

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige