2016-03-22 11 views
1

Ich habe ein VBA-Makro (Excel VBA), wo ich etwas Code Abfrage eines SQL Server-Datenbank-Felds. Das Feld hat den Typ datetime Das Feld enthält Werte einschließlich Millisekunden.wie bekomme ich Datum Zeit einschließlich Millisekunden in VBA

wenn ich Abfrage das Feldes mit ADO und der Re-Cord wird mir formatierte teh Feldwert geben und ohne die Millisekunden Bit zum Beispiel des tatsächlichen Feldwertes, wenn Abfragen in SQL Management Studio sind 2015.12.14 10.19 : 48.077 aber der Datensatzwert ist 14/12/2015 10:19:48 AM

Wie kann ich den tatsächlichen Wert erhalten?

+0

Was haben Sie bisher unternommen, um dieses Problem zu lösen? Möglicherweise können Sie die SQL-Zeichenfolge bearbeiten, um die erforderliche Formatierung hinzuzufügen. Aber da Sie sich entschieden haben, Ihren Code nicht zu veröffentlichen, ist es schwierig, spezifisch zu sein. Bitte lesen Sie die HILFE-Seiten für Informationen bezüglich [Wie man eine gute Frage stellt] (http://stackoverflow.com/help/how-to-ask); und auch [Wie kann ein Beispiel angegeben werden] (http://stackoverflow.com/help/mcve) –

+3

Da eine 'Date'-Variable * (die Zeiten enthält) * keine Millisekunden unterstützt, sollten Sie eine' Double'-Variable verwenden. –

+0

Eine Internetsuche zeigt eine Reihe von Treffern, die dieses Problem angehen. Was hast du versucht und was ist passiert? –

Antwort

0

Versuchen Sie, als Zeichenfolge zu werfen. Wie dies in SQL Server.

select CONVERT(nvarchar(50), GETDATE(), 113) as MyDateAsStringWithMS 

Casting ein Datum als String in Szenarien nützlich ist, wo Ihr zwischen SQL und Oracle und MySQL und ODBC-Level-Bibliotheken wie in Java und VBA und COM konvertieren.

Ich wählte 113 absichtlich. Ich hatte viel Erfolg mit diesem Format, wenn ich Millisekunden möchte.

Verwandte Themen