Buenas,
Estoy intentando exportar una tabla desde access a una hoja en excel y
tengo este código:
Private Sub BtnExportar_Click(sender As System.Object, e As System.EventArgs) Handles BtnExportar.Click
Dim fichero As String = String.Empty
Dim ext As String = String.Empty
If SaveFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
'
fichero = SaveFileDialog1.FileName
Dim AccessConn As New System.Data.OleDb.OleDbConnection(frmLogin.constring)
If AccessConn.State = ConnectionState.Open Then
AccessConn.Close()
Else
'New sheet in Workbook
Dim AccessCommand As New System.Data.OleDb.OleDbCommand("SELECT * INTO [Excel 12.0 Xml;DATABASE=" & fichero & ";HDR=Yes;].[CUENTAS] from [CUENTAS]", AccessConn)
AccessConn.Open()
AccessCommand.ExecuteNonQuery()
AccessConn.Close()
MsgBox("Archivo exportado con éxito.")
End If
Catch
MsgBox("No se pudo exportar el archivo.")
End Try
End If
End Sub
Resulta que no puedo exportarlo a excel por la siguiente excepción:
"No puede registrar los cambios porque uno de los valores que ha especificado infringe la configuración definida para esta tabla o lista (por ejemplo, un valor es inferior al mínimo o superior al máximo). Corrija el error e inténtelo de nuevo."
Y lo puedo hacer con otras tablas SIN NINGÚN PROBLEMA, lo curioso es que si uso fechas EN ESTA TABLA me lanza esa excepción pero si le quito el campo de las fechas SI ME FUNCIONA, en otras tablas usando fechas me funciona!!.
Gracias por leer.
Ya lo pude resolver ;D
Así quedó el query
Dim AccessCommand As New System.Data.OleDb.OleDbCommand("SELECT FACTURAS.CONSECUTIVO, Format(CDate([VENCIMIENTO])) AS LIMITE_FECHA INTO [Excel 12.0 Xml;DATABASE=" & fichero & ";HDR=Yes;].[CUENTAS] from [CUENTAS]", AccessConn)
Lo que hice fue cambiarle el formato de la columna, me imagino (asumo) que el excel estaba teniendo conflictos con los tipos y formatos.