nestor | |
| 2007-10-30 21:58 - Respuestas: 37 - Tema nº: 2478159
Hola... Hay algunas lineas que no entiendo a que se refieren (campo2): y me explico.... tengo una hoja de excel con varios campos (Algunos: fecha, cantidad, valor mes anterior, valor diario, Gastos, etc...) y tiene 30 registros que es los dias del mes de octubre y al final se realiza una sumatoria por cada columna y lo que quiero es mostrar el total de cada columna en el informe.... espero me haya hecho entender mejor... Esta con la confiuracion que tengo segun mi Base de datos::
Private Sub Worksheet_Change(ByVal Target As Range)
'Si la celda donde varías el dato a grabar en la bd, está en B2
If Target.Address = "$X$36" Then
MsgBox Target.Address & vbCrLf & Target.AddressLocal
Dim consulta As String
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.Oledb.4.0; Data Source=C:\Documents and Settings\compucopiasok\Mis documentos\BD COMPUCOPIAS\compucopias.mdb"
'Si el campo está definido como texto hay que pasarle los valores entre comillas simples // todos son numericos
'Esto te modificaría un dato del campo1 de la bd que ya existe.
consulta = "UPDATE foto SET foto.Realcaja ='" & Target & "'"
'suponemos que en el campo2 está el identificador para filtrar la consulta. /// No entiendo esta parte
'Este identificador deberías tenerlo también en la hoja de excel, por ejemplo en la columna 1(A)
'y suponemos que es numérico. Si fuera texto pasarlo entre comillas simples.
consulta = consulta & " where campo3=" & Cells(Target.Row, 3)
cn.Execute consulta, cn
cn.Close
Set cn = Nothing
End If
End Sub
Gracias por la ayuda...
| |
|
|
ebolo | |
|
Re: Combinar Access y Excel - 2007-10-31 08:50 - Respuesta 7
Hola...
¿en la tabla de la bd.mdb, sólo vas a tener un registro con 1 línea, ó se van a grabar más líneas?
Si sólo va a existir un registro que es el total del sumatorio de la hoja de excel, entonces debes de hacerlo así:Private Sub Worksheet_Change(ByVal Target As Range)
'Si la celda donde varías el dato a grabar en la bd, está en B2
If Target.Address = "$X$36" Then
Dim consulta As String
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.Oledb.4.0; Data Source=C:\Documents and Settings\compucopiasok\Mis documentos\BD COMPUCOPIAS\compucopias.mdb"
'Si el campo está definido como texto hay que pasarle los valores entre comillas simples // todos son numericos.
'Esto te modificaría todos los datos del campo Realcaja de la tabla foto.
consulta = "UPDATE foto SET foto.Realcaja =" & Target
cn.Execute consulta, cn
cn.Close
Set cn = Nothing
End If
End Sub
Este código hay que ponerlo en el editor de VBA de la hoja de excel.
| |
|
|
nestor | |
|
Re: Combinar Access y Excel - 2007-10-31 16:38 - Respuesta 8
Si ebolo es solamente 1 registro o una fila, la cual deven ir varias sumatorias o totales que estan en la hoja de calculo los cuales son. (Total venta del mes, total gastos del mes, total del mes anterior, total real en caja) y estos totales son los que me deben mostrar en el informe que arroje Access...
Gracias, voy a probar lo que me diste y te cuento... | |
|
|
nestor | |
|
Re: Combinar Access y Excel - 2007-11-01 23:18 - Respuesta 9
No me funciona.... que paso debo seguir teniendo en cuenta el ultimo post...
Gracias | |
|
|
ebolo | |
|
Re: Combinar Access y Excel - 2007-11-02 08:39 - Respuesta 10
Pero te da algún error?.
Mira en el editor de VBA de excel, en Herramientas - Referencias, esté marcada la referencia Microsoft Activex Data Objects 2.8 Library.
Si la 2.8 no la tienes, pon la 2.7, 2.6,...
En la tabla Foto, añade 1 registro con el valor que quieras, cero por ej.
Saludos.
| |
|
|
|