Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

269
Visualizações
Cree un menú personalizado en Google Sheets / Apps Scripts para ocultar y mostrar la columna en función de quién está navegando por la hoja

Tengo un informe masivo de Google Sheet que contiene muchas métricas. Mucha gente en mi empresa tiene acceso a este informe y todos quieren ver diferentes métricas.

Por lo tanto, estoy tratando de crear un botón en la parte superior del informe que oculte/muestre las columnas según la persona que esté examinando el informe.

 function onOpen(){ const ui = SpreadsheetApp.getUi(); ui.createMenu('Column Creation') .addItem('Add Column', 'insertColumn') .addToUi(); ui.createMenu('View 👀') .addItem('Patrick View', 'HideColumns') .addItem('Karen View', 'HideColumns') .addItem('Umesh View', 'HideColumns') .addItem('Unhide everything', 'HideColumns') .addToUi(); function insertColumn() var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName('KW'); [...] //this is another function to insert a column

Sé que necesito usar sheet.hideColumns(1) y sheet.showColumns (2), pero no estoy seguro de cómo agregar todo esto. ¿Debo crear diferentes variables para cada vista? También en este momento, mi código está ejecutando ambas acciones al mismo tiempo (creación de columnas + ocultar/mostrar columnas) ¿cómo puedo separar esto?

Para resumir quiero:

  1. Un menú personalizado "Ver 👀" con 2 elementos:
  • "Patrick View": muestra todas las columnas pero oculta la columna 1 y 2
  • "Karen View": muestra todas las columnas pero oculta las columnas 4 y 6
  1. Un menú personalizado "Creación de columnas" con 1 elemento:
  • "Agregar columna" (este script ya funciona pero se ejecuta al mismo tiempo que el primer menú personalizado, por lo que cuando hago clic, oculta la columna y crea una nueva)

Espero que mis explicaciones no sean demasiado complicadas, ¡gracias de antemano por cualquier ayuda!

about 4 years ago · Santiago Gelvez
2 Respostas
Responde à pergunta

0

Probar

 var sh = SpreadsheetApp.getActiveSheet() function onOpen() { const ui = SpreadsheetApp.getUi(); ui.createMenu('Column Creation') .addItem('Add Column', 'insertColumn') .addToUi(); ui.createMenu('View 👀') .addItem('Patrick View', 'hideColumnsP') .addItem('Karen View', 'hideColumnsK') .addItem('Unhide everything', 'showColumns') .addToUi(); } function showColumns() { sh.unhideColumn(sh.getRange(1, 1, 1, sh.getLastColumn())) } function hideColumnsP(){ showColumns() sh.hideColumns(1,2) } function hideColumnsK(){ showColumns() sh.hideColumns(4,3) }

¡Tenga en cuenta que solo una persona estará activa a la vez!

about 4 years ago · Santiago Gelvez Relatório

0

No es posible ocultar/mostrar columnas solo para ciertos usuarios

Una vez que un usuario muestra una columna oculta, esta columna también dejará de estar oculta para todos los demás espectadores (después de un tiempo de propagación de unos segundos).

Una solución sería que cada usuario tuviera su hoja de cálculo personal que importe los datos de interés de la hoja de cálculo maestra a través de ImportRange . Eso sería óptimo para ver. Sin embargo, si los usuarios también deben modificar los datos, las cosas se complicarán más, ya que los datos modificados deben sincronizarse con la hoja de cálculo maestra y pueden surgir conflictos si varios usuarios modifican los datos simultáneamente en sus hojas de cálculo locales.

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda