Toon posts:

[VBA] Filedatum uitlezen of gebruik datepicker?*

Pagina: 1
Acties:
  • 117 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig in VBA om een txt-file te importeren in een database. (comma seperated gegevens) Dat lukt aardig met het nodige parsen maar in de tabel zou ook de datum van de gegevens moeten komen. Deze staat niet in de txt-file, maar zou ik willen aflezen van de "create date" van de file. Alleen kom ik er niet achter hoe ik die kan opvragen. Ik zit met deze code.

Visual Basic .NET:
1
2
3
4
Public Sub OpenWord(docInv As String)
  Set gWrdApplication = CreateObject("Word.Application")
  Set gWrdDoc = gWrdApplication.Documents.Open(docInv)
End Sub


Nu vermoed ik dat ik ergens iets moet oproepen bij gWrdDoc om dat terug te vinden.
Iemand een idee? Ik heb reeds op google gezocht en op tweakers, maar nog niets gevonden.

  • jvdmeer
  • Registratie: April 2000
  • Laatst online: 27-07 22:39
Kijk eens naar het filesystemobject en dan specifiek DateCreated

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Niet nodig. Als je toch al een referentie hebt naar het document dan haal je met gWordDoc.BuiltInDocumentProperties(wdPropertyTimeCreated) de datum en tijd op. Maar idd is het maar de vraag of die omweg via Word om een CSV file te importeren in een access(?)-database zinvol is.

VBA en offcie objecten horen in officesuites en software :)

Eigenschappen en methoden vind je vaak het snelste als je in de IDe op F2 drukt en zo in de objectbrowdser terecht komt. Met een beetje logisch nadenken heb je vaak snel de juiste eigenschap te pakken en een druk op F1 brengt je ook meteen bij de beschrijving

[ Voor 10% gewijzigd door Lustucru op 22-08-2006 11:46 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 27-07 21:59

Creepy

Tactical Espionage Splatterer

* Creepy aait Niesje :)
move -> Officesuites en -software

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

voor tekstbestanden geeft BuiltInDocumentProperties(wdPropertyTimeCreated) bij mij de datum en tijd dat word de conversie doet, dus niet de echte bestandscreatiedatum, ik veronderstel dat dit voor alle geimporteerde bestanden het geval zal zijn. je zal eens moeten kijken naar de oplossing van jvdmeer.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Verwijderd schreef op woensdag 23 augustus 2006 @ 00:29:
voor tekstbestanden geeft BuiltInDocumentProperties(wdPropertyTimeCreated) bij mij de datum en tijd dat word de conversie doet, dus niet de echte bestandscreatiedatum [...]
Dat vermoeden had ik ook, dus heb ik het getest voor ik die property postte. Hoe ik het voor elkaar heb gekregen weet ik niet, maar ik zou zweren dat ik toen wel de datum en tijd van de eerste aanmaak van het bestand terug kreeg. Nu niet meer. |:(

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Verwijderd

Topicstarter
Die datum veranderd te vaak. Als die gebruiker zijn file al op zijn minst van de server moet halen en op de pc moet zetten (en wie weet hoeveel keer hij het daarna nog verplaatst) is die datum al lang niet meer de juiste.

Beetje offtopic, of als iemand misschien nog de titel wil veranderen naar "Create Date Of Datepicker" dan kan deze post wel gewoon doorlopen.

Aangezien er dus niet echt een werkbaar middel is om de exacte Create Date te achterhalen, (Persoon die de export file leverd heeft geen zin om nog een veld datum aan toe te voegen) heb ik gewoon een datepicker in het formulier geplaatst waar de gebruiker zelf de juiste datum moet opgeven.

Echter ... Hoe zet je zo'n vervloekte datepicker standaard op de dag van vandaag.
Ik zou denken: dtpDate.Value = Now() maar als ik even meelees bij het doorlopen van de code, dan heeft mijn dtpDate.Value voor deze update de waarde 00:00:00 en maakt VBA zich dan boos omdat ik er Now() of Date wil instoppen.

Ik meende misschien dat mijn notatie of formaat van mijn DatePicker op Time stond ipv Date, maar ik vind nergens zo'n property om zo iets eventueel te wijzigen.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

en wat voor foutmelding krijg je dan wel?

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Verwijderd

Topicstarter
dtpFactDate.Value = Now()

waarde van dtpFactDate.Value : 00:00:00
waarde van Now() : 23-8-2006 9:31:45

Fout 2763
DTPicker geeft de volgende fout door: Property is read-only.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Dan heb je op een of andere manier de control of de container (het besturingselement waarin je active x staat) vergrendeld / locked. Als je in access bezig bent: check even tabblad gegevens bij de properties en dan de status van ingeschakeld en vergrendeld.

offtopic:
Het is toch echt handiger als je meteen de meest relevante dingen vermeldt, foutmeldingen erbij zet etc
;)

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Verwijderd

Topicstarter
OLE-klasse : DTPicker
Klasse : MSCommCtl2.DTPicker.2

Ingeschakeld : Ja
Vergrendeld : Nee

Ik zou niet direct weten wat daar mis aan is.
Pagina: 1