Formula desde Acces

04/02/2010 - 17:26 por Javier | Informe spam
Hola, tengo una tabla acces que quiero migrar a Excel, pero necesito que en
algunos campos me totalice, he intentado hacelo grabando la formula en el
campo correspondiente de forma que queda de asi, Campo 1: 25 Campo 2: 25
Campo3: ¡+B1 (Para que al pasar a excel me lo intreprete como formula) el
problema es que cuando lo exporto me lo interpreta como texto. No puedo
hacerlo directamente en Excel por que la tabla la genero mediante codigo y
segun unas condiciones suma unos valores u otros)
¿Hay alguna manera de que estos campos me los interprete como formulas?

Un saludo
Javier
 

Leer las respuestas

#1 Abraham
04/02/2010 - 21:58 | Informe spam
Y no es mas facil llevar los datos de tu campo1 y campo2 al Excel y
despues, ahi mismo colocar las formulas??? O la pregunta solo para
saber si se puede directamente enviarlo del campo3 y que Excel lo
inlcuya como formula? Esto ultimo es complicarse, yo lo haria con ADO,
pero repito, es complicarse:

Sub xxx()
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim x As Long, y As Long
Set cnn = New ADODB.Connection

cnn.ConnectionString = _
"Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=D:\Base de datos1.accdb" & ";" & _
"Jet OLEDB:Database Password=xxx"
cnn.Open

Set rst = New ADODB.Recordset


Sql$ = "select * from tabla2"

With rst
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open Sql$, cnn, , , adCmdText
End With

rst.MoveFirst
y = 1

For x = 1 To rst.RecordCount
Cells(y, 1) = rst.Fields!campo1
Cells(y, 2) = rst.Fields!campo2
Cells(y, 3) = rst.Fields!campo3
Range("C65536").End(xlUp).Formula = Range("C65536").End(xlUp).Formula
rst.MoveNext
y = y + 1
Next x

Set cnn = Nothing
Set rst = Nothing

End Sub


Abraham

Preguntas similares