OK, scusami non sono stato molto chiaro.
Allora, quel "avevo provato anche con questo tipo" era riferito alle variabili che contengono le date scelte dell'intervallo, non al campo nel database, il campo nel database è di tipo data/ora e non l'ho mai cambiato. Quello che pensavo è che dandogli le date dello stesso formato che usa il database Access sarebbe andato liscio, ma anche dandole nel formato, che credo sia quello giusto, il problema persiste.
Non avevo postato il codice perché ero convinto che fosse solo un problema del formato del campo data nel database Access, ho sbagliato a non postarlo, adesso riporto tutto.
Originariamente inviato da gibra
Mettere qualsiasi formato è sbagliato! Devi usare il formato che vuole il database.
E l'avevo fatto questo, ma sembra non funzioni lo stesso 
Originariamente inviato da gibra
Scusa, ma se stai usando VB.NET devi usare ADO.NET. Perchè usare ADODB? Non ha molta logica...
Ma ADODB l'ho utilizzato aggiungendo il riferimento ad ADODB dai componenti .NET al progetto, non è l'ADO.NET?
Originariamente inviato da gibra
Un'enunciato SQL è universale, ovvero funziona con qualsiasi database, a meno che tu stia usando comandi 'specifici' per un determinato tipo di database. Ma il tuo enunciato SQL è standard, cambiano solo i delimitatori di data.
Però l'impostazione del command non mi sembra la stessa, pensavo potesse dipendere dal fatto che con l'Oledb non riuscivo ad impostare i formati corretti per le date. Comunque visto che l'Oledb va bene lascio come stà e posto il codice:
codice:
Imports System.Data
Imports System.Data.OleDb
Public Class Inserimento_Dati
Dim objConnection_archivio As OleDbConnection
Dim DataReader As OleDb.OleDbDataReader
Private Sub PrintDocument_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument.PrintPage
Dim strselect As String
'Apro la connessione.
objConnection_archivio.Open()
Dim Data_iniziale, Data_finale As String
Data_iniziale = Microsoft.VisualBasic.Left(dtpData_iniziale.Value, 10)
Data_finale = Microsoft.VisualBasic.Left(dtpData_finale.Value, 10) & " 23.59.59"
Cmd.CommandText = "SELECT SELECT tipologiaverifica, dataavvenutaverifica, importoverifica FROM verifiche WHERE dataavvenutaverifica BETWEEN @Data1 AND @Data2 ORDER BY idverifica"
Cmd.Parameters.AddWithValue("@Data1", Data_iniziale)
Cmd.Parameters.AddWithValue("@Data2", Data_finale)
DataReader = Cmd.ExecuteReader
While DataReader.Read() 'Il problema è qui, in questo ciclo non entra mai.
Stampa_verifica()
End While
DataReader.Close()
Cmd.Parameters.Clear()
objConnection_archivio.close()
end sub
end class