Método VBA rango falló

Resuelto
Hola,
estoy programando en VBA Excel

tengo un contador j que debe proporcionarme un número de fila.

quiero fusionar celdas, por lo tanto, necesito seleccionar las celdas a fusionar y aplicar la fórmula, pero no entiendo por qué me dice que mi método rango ha fallado, me parece correcto...
¿Podrías aclararme la cuestión?

Workbooks("etude delai.xls").Sheets("Feuil1").Range("A" & j & " : H" & j).Select


--
El 95 % de los errores provienen de lo que hay entre el teclado y la silla

Recuerda marcar "resuelto" si es el caso
Configuración: Windows XP Opera 9.25

8 respuestas

  1. Range("C10:D20").Seleccionar
    Selección.Copiar
    Hojas("Feuil2").Seleccionar
    Rango("B7").Seleccionar
    HojaActiva.Pegar

    No confundir la hoja seleccionada con la hoja activa...

    O bien escribes :

    Range("C10:D20").Seleccionar
    Selección.Copiar
    Hojas("Feuil2").Seleccionar
    Rango("B7").Seleccionar
    Selección.Pegar

    O bien :

    Range("C10:D20").Seleccionar
    Selección.Copiar
    Hojas("Feuil2").Activar
    Rango("B7").Activar
    CeldaActiva.Pegar
    4
    1. Hola a todos,
      Estoy empezando a hacer programación VBA/excel, y tengo un problema que no consigo resolver.
      Me encuentro con el famoso problema "VBA Método range falló" mientras hago una macro en excel, y después retomo el código generado por la macro en un procedimiento.
      El código generado es el siguiente

      Range("C10:D20").Select
      Selection.Copy
      Sheets("Hoja2").Select
      Range("B7").Select
      ActiveSheet.Paste

      Al buscar un poco, me di cuenta de que es el cambio de hoja lo que causa el problema, porque si hago el copiar-pegar en la misma hoja no hay problema.

      ¿Alguien ha tenido este problema antes?
      Gracias de antemano
      Joey6
      2
      1. ("A" & j & " : H" & j).Select intenta poner su (no se sabe nunca^^)
        ("A" & j & : "H" & j).Select
        1
        1. A" & j & : "H" & j).Select no puede funcionar porque el método es
          range("col1fila1 : col2fila2).select
          o sea, por ejemplo

          range("A1:H1").select

          --
          El 95% de los errores provienen de lo que hay entre el teclado y la silla

          Recuerde marcar "resuelto" en su caso.
          1
          1. sí, conozco la estructura "teórica" del rango!
            pero en la práctica vb deja pasar ciertas cosas...
            de hecho, es el & detrás de la j lo que me molesta, ¿por qué le pusiste uno detrás?
            0
            1. no, está bien, ya he encontrado que es un espca de $*ér&é"r& que estaba de más
              --
              El 95 % de los errores provienen de lo que hay entre el teclado y la silla

              Recuerde marcar "resuelto" en caso de que sea necesario
              0
              1. hola
                intenta un poco poner Activate en lugar de Select
                0
                1. está bien, lo encontré, gracias, era un espacio de mierda que hacía que todo fallara y además me faltaba un Windows("etude delai.xls").Activate más arriba, gracias a los dos por su ayuda
                  --
                  El 95% de los errores provienen de lo que hay entre el teclado y la silla

                  Recuerden marcar "resuelto" si es el caso
                  0