Compartir a través de

compartir SOLO una hoja de un libro Excel

Anónimas
2022-05-09T14:03:32+00:00

Hola; tengo un libro en Microsoft Excel almacenado en la nube, el cual tiene un total de 20 hojas (20 pestañas) y deseo compartirlo con otros usuarios, pero UNICAMENTE deseo compartir una solo hoja y no todo el libro.

Qué debo hacer para compartir SOLO UNA HOJA ?

Gracias

Microsoft 365 y Office | Excel | Otros | Windows

Pregunta bloqueada. Esta pregunta se migró desde la Comunidad de Soporte técnico de Microsoft. Puede votar si es útil, pero no puede agregar comentarios o respuestas ni seguir la pregunta.

0 comentarios No hay comentarios

7 respuestas

Ordenar por: Muy útil
  1. Anónimas
    2022-05-09T19:38:26+00:00

    Hola Antonio, entiendo lo que sugieres, pero exactamente la idea es evitar tener tanto archivos, sino tener un único libro con varias hojas y compartir cada una de las hojas con distintos usuarios sin necesidad de compartir todo el archivo.
    Tienes alguna idea de cómo hacerlo ?

    9 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios
  2. Anónimas
    2022-05-10T13:48:45+00:00

    Estoy de acuerdo contigo, creo que Microsoft Excel no tiene está facilidad y justo por estas cosas es que la gente migra a Google Sheets 🙁

    6 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios
  3. Anónimas
    2022-05-10T07:21:01+00:00

    Hola:

    Hasta que alguien te responda lo contrario, yo creo que no se puede, y menos si en lo que dices ahora 'me da la impresión' que además quieres compartir según cada hoja con un usuario diferente. También dices que el archivo está en la nube, con lo cual la opción por código VBA se complica.

    Yo tengo algo hecho 'parecido' con VBA:

    1. Cuando guardo el libro, oculto las hojas que NO quiero que se vean,
    2. Cuando se abre el libro, dependiendo de quien lo abra, muestro las hojas que puede o no puede ver.

    En tu caso la opción 2 al estar en la nube no la podrás hacer, pero la 1 la puedes hacer en local antes de subir el libro, u ocultarlas manualmente.

    Es una idea...

    NOTA: Ocultar hojas obviamente es una protección 'muy baja'. Mediante VBA se puede ocultar 'un poco más' (el usuario no podrá mostrar las hojas tan fácilmente), pero no deja de ser una opción de protección fácil de saltarse :-(.

    Un saludo

    6 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios
  4. Anónimas
    2022-05-09T19:25:48+00:00

    Si «esa hoja» no depende de las demás, se me ocurre que la copies a un libro nuevo y compartas el nuevo libro. Si depende de las demás... a saber lo que quieres compartir, ¿Sólo lectura?.

    5 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios
  5. Anónimas
    2022-07-08T06:35:33+00:00

    Hola:

    Mediante programación VBA, en el evento WorkBook_Open() del libro leo la variable de entorno "username", y en base a eso recorro todas las hojas y las muestro o no.

    Public Sub WorkBook_Open()

    Dim UserName As String, oSh As WorkSheet

    UserName = Environ$("username")

    For Each oSh In ThisWorkBook.WorkSheets

          If <¿este usuario puede ver esta hoja?> Then
    
              oSh.Visible = xlVisible
    
          Else
    
              oSh.Visible = xlVeryHidden
    
          End If
    

    Next

    End Sub

    Obviamente <¿este usuario puede ver esta hoja?> es una función que deberías definir tu. Existen múltiples posibilidades, tener una tabla con la relación usuario/hoja, nombres en las hojas, o cualquier cosa que te quieras/puedas inventar.

    Un 'truco' para evitar que abran el libro sin macros y lo vean todo es tener en el evento BeforeClose código que oculte TODAS las hojas antes de guardar. Como es OBLIGATORIO que exista una hoja visible siempre, yo suelo tener una hoja de 'AVISO' que se muestra siempre, con instrucciones del libro o notas para los usuarios.

    Public Sub WorkBook_BeforeClose(Cancel As Boolean)

    Dim oSh As WorkSheet

    For Each oSh In ThisWorkBook.WorkSheets

          If oSh.Name = "AVISO" Then
    
              oSh.Visible = xlVisible
    
          Else
    
              oSh.Visible = xlVeryHidden
    
          End If
    

    Next

    End Sub

    De esta forma el libro SIEMPRE se guarda con todas las hojas ocultas, y solo se mostraran al abrir.

    Es una guía básica que espero que te sirva...

    Un saludo

    4 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios