2010-05-10 182 views
8

que tienen una "gran" consulta SQL (como 200 líneas) ...macros de Excel - Demasiadas continuaciones de línea

dim query as string 
query = "..................................." & _ 
     "..................................." & _ 
      .... Like a lot lines later... 
     "..................................." 

function query,"sheet 1" 

Cuando hago esto, Excel dice "Demasiadas continuaciones de línea."

¿Cuál es la mejor manera de evitar esto?

+1

escribir una consulta más corta: P –

+1

No puedo hacer eso ... XD – pojomx

+0

[MSDN - Demasiadas continuaciones de línea] (https://msdn.microsoft. com/en-us/library/office/gg264236.aspx) – KyleMit

Respuesta

8

Solo hay una forma: usar menos continuaciones.

Esto se puede hacer poniendo más texto en una línea o mediante el uso de la concatenación Dicho de otra manera:

query = ".........." 
query = query & ".........." 
query = query & ".........." 

Pero lo mejor es cargar el texto de una fuente externa, como un todo.

+0

Un poco sucio pero funciona :) – pojomx

1

Hasta el momento me encontré con esto ...

Call AddToArray(query, "...") 
Call AddToArray(query, "...") 
... a lot lines later... 
Call AddToArray(query, "...") 

* Editar: se olvidó de agregar:

Sub AddToArray(myArray As Variant, arrayElement As Variant) 

If Not IsArrayInitialized(myArray) Then 
    ReDim myArray(0) 
    myArray(0) = arrayElement 
Else 
    ReDim Preserve myArray(UBound(myArray) + 1) 
    myArray(UBound(myArray)) = arrayElement 
End If 

End Sub 

Fuente: link text X (gracias

(A la espera de mejores formas para hacer esto ...) gracias: P

0

Dividir la consulta en varias secciones:

query = _ 
    "............" & _ 
    "............" & _ 
    "............" 
query = query & _ 
    "............" & _ 
    "............" & _ 
    "............" 
query = query & _ 
    "............" & _ 
    "............" & _ 
    "............" 
+1

Esto es lo que no quería hacer :) gracias – pojomx

Cuestiones relacionadas