Excel - inner join en excel no me funciona

 
Vista:
sin imagen de perfil

inner join en excel no me funciona

Publicado por Andy Lima (5 intervenciones) el 28/04/2015 15:58:29
Ho la a todos

quiero extraer datos de una bd oracle de varias tablas relacionadas entre si.

desde excel abro la conexion sin problemas,

creo un recordset

Set rs = CreateObject("ADODB.Recordset")

hasta aqui sin problemas

aqui la sintaxis de la consulta

sttsql ="SELECT tabla.campo, table.campo FROM tabla WHERE xxxx'"


rs.Open strsql, cnn (uso la conexion ya abierta anterioirmente)

hasta ahi todo me funciona sin problemas

pero en cuanto meto una consulta que tiene tablas relacionadas para ir a buscar toda la informacion de una vez me hace errores

lo que hago es que realizo la consulta en access y la copio textualmente en excel para ahorrar tiempo y escritura.....

abra algun ejemplo en excel que venga con inner join para ver como funciona...... gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

inner join en excel no me funciona

Publicado por Khristtian (77 intervenciones) el 28/04/2015 20:58:23
Pon la consulta que te da error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

inner join en excel no me funciona

Publicado por Andy Lima (5 intervenciones) el 28/04/2015 22:21:17
este es mi codigo

cuando pongo esto

1
2
strsql = "SELECT factura.sumision, facture.fecha  FROM factura " & _
            "WHERE FACTURA.DATE= ‘CRITERIO’ "

funciona bien pero cuando cambio la consulta por una consulta multitablas no me deja


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Dim str As String
Dim strsql As String
str = "Provider=MSDAORA;Data Source= MIBD;Persist Security Info=True;Password=****;User ID=****"
 
Set cnn = CreateObject("ADODB.Connection")
cnn.Open str
Set rs = CreateObject("ADODB.Recordset")
Row = 5
col = 1
strsql = "SELECT Factura.numero, factura.fecha, factura.sumision, Sumisión.numero , Sumision.cliente" & _
            "FROM factura INNER JOIN sumusion  on factura.sumision =sumisión.numero " & _
            "HAVING (((factura.fecha) = '2015-02') And ((sumision.cliente) = '22314'))"
 
rs.Open strsql, cnn
numRs = rs.Fields.Count
num = 0
Do Until rs.EOF
    Do While num < numRs
    On Error Resume Next
    Cells(Row, col + num).Value = rs(num)
        num = num + 1
    Loop
    num = 0
    Row = Row + 1
    rs.MoveNext
Loop
rs.Close
cnn.Close

el error ke me da es

ORA-00933: SQL command not properly ended

gracias de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

inner join en excel no me funciona

Publicado por Juanjo (494 intervenciones) el 29/04/2015 08:31:43
Muy buenas.

No he mirado con detenimiento la consulta, pero a bote pronto se aprecian cosas que te darán error: Unas veces tienes sumisión y otras sumision (con y sin tilde), y también aparece sumusion (con u).

Un saludo. Juanjo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

inner join en excel no me funciona

Publicado por Andy Lima (5 intervenciones) el 29/04/2015 13:01:48
saludos juanjo, graicas por tu respuesta....en realidad los nombres que aparecen en la consulta no son reales, los he cambiado por razones de seguridad que en mi compania son muy estrictos con este tema

te explico: la consulta la hice en access que puedo escoger las tablas y relacionarlas entre si, luego puse la consulta en vista sql y la copie en excel con sus correspondientes tabulaciones al final de la linea " & _ para poder distribuir el cofdigo en varias lineas , lo mismo que hice con la consulta simple sin inner joins, la que funciona sin problemas.

tu conoces algun ejemplo donde haya un recorset anidado dentro de otro ? porque eso me podria funcionar tambien lo que seria mas largo porque tengo como cuatro tablas relacionadas entre si.


gracias....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

inner join en excel no me funciona

Publicado por juan (2 intervenciones) el 29/04/2015 14:03:54
Si en tu compañía fueran tan estrictos no estarías haciendo consultas aquí.

Creo que deberías poner información real, asi se podría ayudar realmente.

Tu problema es un Error 300
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar