Error en WorkSheets.Select

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Error en WorkSheets.Select

Notapor DOOCH » 12 Ago 2006 18:42

Saludos
Adjunto archivo que m arroja error , por favor a vr si me ayudan a solucionarlo

gracias
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Notapor galileogali » 12 Ago 2006 19:44

WORKSHEETS es el nombre de la CLASE, a fin de establecer el OBJETO concreto debes especificar ITEM, es decir, por ejemplo:
worksheets(1).select Selecciona Hoja1

Tambien se puede a traves del nombre de la Hoja, por ejemplo si la hoja es "registros"

Worksheets("registros").select, ahora bien si la idea es ir seleccionando alternativamente cada elemento de la coleccion o clase, te conviene un bucle for each o for next

For each Sh in Worksheets

sh select

instrucciones

Next sh


ó

For i=1 to Worksheets.count

Worksheets(i).select

next i

Espero te sirva. El concepto seleccionar todas las hojas, es eso lo que buscas ?, Todas al mismo tiempo?, si es eso en forma simultanea, quedate al aguardo de cualquier otro que te responda, ya que en mi modesto entender eso no o conozco, ni se de que forma podria ser posible.

GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Re: Error en WorkSheets.Select

Notapor DOOCH » 12 Ago 2006 20:00

Saludos

Efectivamente la idea es seleccionar todas las hojas, el código lo obtuve de uno de los boltines y sí­ selecciona todas las hojas, la verdad no sé cual es la razón del porque a mi me está fallando.

Entiendo el For each para recorres a través de todas las hojas pero harí­a aún mas lento el código

Gracias por su ayuda de todas maneras
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Re: Error en WorkSheets.Select

Notapor KL » 12 Ago 2006 20:35

Hola chicos,

Primero: comentarle a DOOCH que su codigo es tremendamente intrusivo con las barras de herramientas - si yo fuese el usuario no volveria a abrir el libro. Te recomiendo que andes con mucho cuidado con manipular la interfaz de usuario ya que aqui corres el riesgo de estropear la impresion sin haber empezado siquiera. Procura recoger la configuracion inicial de todo lo que vayas a cambiar en una(s) variable(s) (o mejor aun en una hoja oculta) para ponerlo todo en su sitio al salir.

Segundo: el comando Worksheets.Select funciona para seleccionar TODAS las hojas del libro salvo que haya al menos una hoja que no se pueda seleccionar. ¿Alguna hoja oculta por ahi?
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Re: Error en WorkSheets.Select

Notapor KL » 12 Ago 2006 20:43

DOOCH";p="29997 escribió:...la idea es seleccionar todas las hojas...
...el For each para ...harí­a aún mas lento el código


No te creas. Prueba lo siguiente:

Código: Seleccionar todo
Sub Macro1()
    Dim Hojas, ws As Worksheet
    ReDim Hojas(0)
    For Each ws In Worksheets
        If ws.Visible Then
            Hojas(UBound(Hojas)) = ws.Index
            ReDim Preserve Hojas(UBound(Hojas) + 1)
        End If
    Next ws
    ReDim Preserve Hojas(UBound(Hojas) - 1)
    Sheets(Hojas).Select
End Sub
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Re: Error en WorkSheets.Select

Notapor DOOCH » 12 Ago 2006 21:00

Saludos

Segundo: el comando Worksheets.Select funciona para seleccionar TODAS las hojas del libro salvo que haya al menos una hoja que no se pueda seleccionar. ¿Alguna hoja oculta por ahi?


Preciso muy preciso, gracias efectivamente tengo una hoja oculta, gracias eso resuelve el problema

Bueno como dije encontré el código en un Boletí­n hecho por Rolo y lo que hace es tomar todas la configuraciones, guardarlas para luego restablecerlas al salir en verdad es muy bueno.


Gracias me ayudaron mucho.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Notapor galileogali » 12 Ago 2006 23:21

Realmente, debo reconoser que he incoporado conocimiento, ya que entendia que no era posible y como tal nunca se me presentó el caso de usarlo.
GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados