Newsgroup: it.comp.lang.visual-basic
Titolo: Problema con le date

Ciao a tutti, il mio problema è questo:
Ho una tabella di un database access con al suo interno un campo data, il
quale l'access lo scrive in formato "dd,mm,yy". Il VB però riconosce di
default il formato "mm,dd,yy". Come fare?

Per esser più chiaro il mio problema è questo:
1.    Dim DateStr1 As String
2.    Dim DateStr2 As String
3.    Dim Date1 As Date
4.    Dim Date2 As Date
5.        DateStr1 = (TextQueryDataDa.Text)
6.        DateStr1 = Mid(DateStr1, 4, 2) & "\" & Mid(DateStr1, 1, 2) & "\" &
Mid(DateStr1, 7, 2)
7.        DateStr2 = (TextQueryDataA.Text)
8.        DateStr2 = Mid(DateStr2, 4, 2) & "\" & Mid(DateStr2, 1, 2) & "\" &
Mid(DateStr2, 7, 2)
9.        Date1 = Format(DateStr1, "dd,mm,yy")
10.      Date2 = Format(DateStr2, "dd,mm,yy")
11.      Data1.RecordSource = "SELECT * FROM telemove " _
                       & "WHERE Data BETWEEN '" & Date1 & "' AND '" & Date2
& "'"
12.      Data1.Refresh
e tramite le istruzioni 6 ed 8 faccio diventare, per esmpio, 24/09/00 in
09/24/00.
Così facendo DateStr1 è diventato del tipo "09/24/00", ma a me serve del
tipo 09/24/00 per poterlo utilizzare nel WHERE della mia query ed allora
utilizzo le istruzioni 9 e 10, ma a questo punti il vb si blocca e da
errore.
ciao.

 ha scritto nel messaggio
news:95mnnb$3r$1...@nread2.inwind.it...


> WebPC:

Option Explicit
Private Sub TextBox_GotFocus( _
  ByRef TextBox As VB.TextBox _
)
  With TextBox
    .SelStart = 0
    .SelLength = Len(.Text)
  End With
End Sub
Private Sub Command1_Click( _
)
  Const c_strUSDataFormat As String = "m/d/yyyy"
  Dim strData1  As String
  Dim strData2  As String
  Dim strSql    As String
  With Text1
    If IsDate(.Text) _
    Then _
      strData1 = Format$(.Text, c_strUSDataFormat)
  End With
  With Text2
    If IsDate(.Text) _
    Then _
      strData2 = Format$(.Text, c_strUSDataFormat)
  End With
  strSql = "SELECT * FROM [telemove]"
  If Len(strData1) And Len(strData2) Then
    strSql = strSql & " WHERE [Data]"
    If strData1 = strData2 Then
      strSql = strSql & " = #" & strData1 & "#"
    Else
      strSql _
        = strSql _
        & " BETWEEN #" & strData1 & "#" _
        & " AND #" & strData2 & "#"
    End If
  ElseIf Len(strData1) Then
    strSql = strSql & " WHERE [Data] = #" & strData1 & "#"
  ElseIf Len(strData2) Then
    strSql = strSql & " WHERE [Data] = #" & strData2 & "#"
  End If
  strSql = strSql & ";"
  Text3.Text = strSql
End Sub
Private Sub Form_Load( _
)
  Text1.Text = ""
  Text2.Text = ""
  With Text3
  ' .MultiLine = True
    .Text = ""
    .Locked = True
  End With
  With Command1
    .Caption = "SQL!"
    .Default = True
  End With
End Sub
Private Sub Text1_GotFocus( _
)
  TextBox_GotFocus Text1
End Sub
Private Sub Text2_GotFocus( _
)
  TextBox_GotFocus Text2
End Sub
Private Sub Text3_GotFocus( _
)
  TextBox_GotFocus Text3
End Sub
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------

verissimo, specie se e' l'italiano standard dei ng :)
Ah, ecco...
Infatti ho installato ieri un Windows 2000 su un portatile e ci sono 2
tipi di italiano: italiano (standard) e italiano (svizzero).
Ora ho capito a cosa si riferisce lo (standard), pero' non capisco
tanto bene perche' quell'altro si chiami (svizzero). Forse perche' gli
svizzeri sono molto precisi? ;)
Saluti.
-- 
      Gianni "bugbarbeq" Rondinini, 25, RA, 242, 152
  VBR - Vero Birro Romagnolo®, diffidate dalle imitazioni!
 Opel/ECC Calibrezio EVO-IV --- Kawasaki "Gas Gas" ZZ-R 1100
 ICQ# 36893168 - IRCNet: bugbarbeq, @ on #linux-it & #NetBSD

 svizzeri sono molto precisi? ;)
qualcuno che segue il ng c'e'. passiamo la palla a loro...
intanto ipotizzo: come inglese uk / usa
(colour / color, programme / program, ecc.).
in canton ticino ci dovrebbero essere delle varianti.
ma non pensavo tali da giustificare un'alternativa.