Jump to content

paikerr

Members
  • Content Count

    166
  • Joined

  • Last visited

About paikerr

  • Rank
    Advanced Member
  • Birthday May 22

Profile information

  • Gender
    Hombre
  • Localización:
    Segovia, Castilla y León

Converted

  • Campos
    ,
  • Mi versión de Excel:
    2

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Funciona muy bien, pero me gustaría definir la variable rango con el código que me has pasado de esta manera: Dim rango As Range Set rango = Range("A1").CurrentRegion Pero me da error. Concretamente, dice: Se ha producido el error '1004' en tiempo de ejecución: No se puede obtener la propiedad OutlineLevel de la clase Range. Otro problema es que me gustaría dejar todo desagrupado hasta el nivel 0. Es decir, en caso de que existieran varios niveles de agrupación, el programa los va eliminando uno a uno. Pero me gustaría que eliminara todos los niveles de golpe. Es esto po
  2. Hola @Antoni, no puedo introducir otro tratamiento de errores porque mi código es tan sólo el extracto de otro código mucho más completo, y ya tengo definido otro tratamiento de errores. En otras palabras, quedaría algo como esto... Private Sub Worksheet_Activate() ' Tratamos los errores de la aplicación ofimática... On Error GoTo error ' Desagrupamos todas las columnas... Columns.Ungroup ' 1 Columns(4).Group ' 2 Columns(5).Group ' 3 Me.Outline.ShowLevels ColumnLevels:=1 ' 4 salir: ' Y salimos d
  3. Hola compañeros, Llevo un tiempo con un problema en el siguiente código, y no sé cómo solucionarlo. Private Sub Worksheet_Activate() Cells().Columns().Ungroup ' 1 Columns(4).Group ' 2 Columns(5).Group ' 3 Me.Outline.ShowLevels ColumnLevels:=1 ' 4 End Sub Me gustaría insertar un condicional en la primera sentencia tal que "If Cells().Columns().Group = True Then Cells.Columns.Ungroup", para de este modo ejecutar el resto de las sentencias (la segunda, tercera y cuarta) sin problemas. Pero esa instrucción me da problema
  4. Ammm... Pues pensé entonces que se podría definir un array con otro tipo de datos. Gracias de todos modos, @Antoni.
  5. Hola compañeros del foro, Tengo el siguiente problema de novato con el presente array que he creado: Este es el código: Option Explicit Option Base 1 Sub adminTemp() Dim admin As String admin = Array("...", "...", "...", "...", "Administrador", "Conectado", "...", "...") Dim fila As Long fila = Sheets("CONEXIONES").Range("A1048576").End(xlUp).Row Dim columna As Byte For columna = 1 To UBound(admin) If Sheets("CONEXIONES").Cells(fila, columna).Value = admin(columna) Then Sheets("CONEXIONES").Rows(fila).Delete Shift:=xlUp Next columna End
  6. Estoy de acuerdo con @Sergio, es díficil encontrar documentación oficial sobre el código XML de la ribbon.
  7. Muchísimas gracias por la corrección, @JSDJSD. Y muchas gracias también por compartir ese vídeo. Efectivamente, me percaté de ese error cuando me pasó el código @Antoni. Te felicito por tu corrección. Con gente como vosotros, da gusto compartir conocimientos a través de este foro. Mil gracias de nuevo. Saludos.
  8. Muchísimas gracias, @Antoni. Eres un genio!! 👏👏✌️
  9. Hola a todos, Tengo una pregunta que igual a muchos os parecerá una tontería, pero es un tema que me pilla completamente en fuera de juego. La cuestión es que estoy tratando de modificar la cinta de opciones desde la aplicación "Custom UI Editor XML" para mis aplicaciones ofimáticas con Excel y Access 2019. Sin embargo, tengo problemas para generar el código de programación. ¿Podría ser porque esta herramienta es tan sólo válida para la versión de Excel 2013? Porque de ser así, tendría que descargarme la versión del 2013... Agradezco cualquier aporte sobr
  10. Hola @Antoni, disculpa. Llevás toda la razón. Te adjunto por aquí el fichero: CONTACTOS.xlsm Del mismo modo, podrás leer el código del formulario. Si ves alguna cosa que se pudiera mejorar o cambiar, estoy abierto a cualquier aporte por tu parte. Muchas gracias de antemano por tu tiempo.
  11. @Luis Caballero, me gusta tu propuesta. Es un poco parecida a la mía, pero accediendo al nombre del equipo. Desconocía que eso se pudiera hacer desde VBA. Muchas gracias por compartir tu código. Combinando ambas propuestas, quedarían algo así: Private Sub Workbook_Open() With Application If (CreateObject("WScript.Network").ComputerName <> "nombre del equipo" And _ .UserName <> "nombre del autor") Then MsgBox "Uppsss... Parece que está tratando de abrir la aplicación ofimática en otro equipo informático." .Quit E
  12. Hola de nuevo, Me preguntaba cómo podría hacer para que la aplicación ofimática se ejecutara única y exclusivamente dentro del mismo puesto de trabajo. De manera que si otro usuario copiara el fichero Excel e intentara ejecutarlo en otro equipo informático, le saltara un error al tratar de iniciar la aplicación ofimática. Lo único que se me ocurre es algo parecido a esto: Private Sub Workbook_Open() With Application If .UserName <> "Ayuda Excel" Then Msgbox "Uppsss... Está tratando de abrir la aplicación ofimática en otro puesto de trabajo." .Qui
  13. Hola a todos, Tengo el siguiente problema: Me gustaría desactivar las casillas "Código" y "Nombre Fiscal" de mi formulario cada vez que un usuario activa la opción "Cliente", tal y como se ve en la siguiente imagen. Es decir, cada vez que se activa la opción "Cliente" que aparezca un fondo color gris y no se pueda escribir nada sobre las casillas tachadas de rojo. Cómo se haría? Con un evento change? Y cómo hago para identificar la página "Denominación" activa dentro mi formulario multipágina? He buscado ayuda por internet, por manuales y por videotutoriales, pero no
  14. Hola a todxs, Me gustaría que los filtros automáticos aparecieran siempre que se activa la hoja, tal y como aparece en la imagen adjunta. Para ello, he desarrollado el siguiente evento: Private Sub Worksheet_Activate() With Sheets("Hoja1") .AutoFilterMode = False ' Desactivamos siempre los filtros automáticos... .Cells.AutoFilter End With End Sub Sin embargo, no me funciona, porque la primera vez se activan los filtros automáticos, pero a la siguiente no. Es casi como poner lo siguiente: Private Sub Worksheet_Activate() Sheets("Hoja1").
×
×
  • Create New...

Important Information

Privacy Policy