Perguntas do fórum de planilha para escolher um DVD aleatório

Perguntas do fórum de planilha para escolher um DVD aleatório

Eu tenho uma lista dos meus (279) DVDs em uma planilha do OpenOffice (versão 3.3.0) no meu laptop com Windows 7 e quero criar uma fórmula para escolher aleatoriamente um filme para assistir (para ocasiões em que não consigo inventar meu mente). Isso funciona:

=RANDBETWEEN(1;279)

Mas tudo o que ele fornece é um número que eu tenho que rolar para cima e para baixo para verificar e também tem o número total de DVDs 'codificados'. Quero exibir o nome do filme (que está na coluna A) para que se, por exemplo, o número fosse 277, aparecesse o nome do filme, neste caso 'X-Men 2'. Presumi que bastaria adicionar a letra da coluna na frente assim:

=A(RANDBETWEEN(1;279))

funcionaria, mas gera um erro: #NAME?

Então, como posso...

  1. Faça com que exiba o nome do filme
  2. Detectar automaticamente o número superior à medida que adiciono novos DVDs, para não precisar codificá-lo na fórmula?
  3. Como posso fazer com que apenas clique na célula para gerar novamente um novo número aleatório? (ou seja, não é necessário recalcular manualmente pressionando Shift+Ctrl+F9)

Obrigado.

Responder1

  1. Para retornar o valor da coluna A, linhaR, você pode usar=INDIRECT("A"&R)

  2. Para contar o número de valores na coluna A, você pode usar=COUNTA(A1:A65536)

    Então, para o seu caso, você poderia usar=INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536)))

  3. Você pode criar um botão macro que recalculará para você. Não sei o suficiente sobre a linguagem macro do OpenOffice.org Calc para fornecer mais ajuda.

Responder2

Não estou familiarizado o suficiente com os componentes internos do OpenOffice para ajudar com sua terceira solicitação, a não ser para dizer que simplesmente F9 funciona para mim, sem necessidade de mudança ou controle. Quanto aos outros dois, porém:

=INDIRECT(ADDRESS(RANDBETWEEN(1,MATCH("*",$A$1:$A$50000,-1)),1))

Substitua o 50000por algo maior se você tiver ou achar que terá mais de 50.000 DVDs, e substitua o 1na ADDRESS()função se estiver em uma coluna diferente de A.

Responder3

  • Coloque a fórmula da resposta de Bavi_H na célula B1( =INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536))))
  • Faça com que a largura e a altura sejam B1boas e grandes
  • Formato B1com uma fonte atraente em tamanho grande, escolhido para que títulos longos de filmes ainda caibam
  • Selecione qualquer célula na coluna Ae selecione o item de menuFormat > Column > Hide
  • Selecione o Tools > Macros > Record Macrositem do menu
  • Pressione F9 (ou Ctrl-Shift-F9)
  • Clique no Stop Recordingbotão
  • No Basic Macros Dialogque aparece, digite um nome como "atualizar" no Macro namecampo, selecione a planilha na Save macro incaixa, clique Savee insira um nome de módulo como "filmes", clique emOK
  • Selecione o item do menuView > Toolbars > Form Controls
  • Nessa barra de ferramentas, certifique-se de que o Design Modebotão esteja ativado
  • Pressione o Form Designbotão para tornar a barra de ferramentas Form Design visível
  • Na Form Designbarra de ferramentas, desligue o Open in Design Modebotão
  • Na Form Controlsbarra de ferramentas, clique no Label Fieldbotão
  • Arraste o cursor do canto superior esquerdo da célula B1 para o canto inferior direito para criar um campo de rótulo do mesmo tamanho da célula
  • Clique com o botão direito na célula/rótulo e selecione o Control...item no menu de contexto
  • Selecione a Generalguia e exclua o texto do Labelcampo
  • Selecione a Eventsaba, clique no ...botão
  • Na Assign Actioncaixa de diálogo, clique no Macro...botão
  • Na Macro Selectorcaixa de diálogo, expanda as entradas da sua planilha na Librarycaixa até ver o nome do módulo que você usou anteriormente (por exemplo, "filmes") e clique nele
  • Na Macro namecaixa, selecione a macro que você criou anteriormente (por exemplo, "atualizar")
  • Clique em OK, clique OKe feche a Propertiescaixa clicando no Xbotão no canto superior direito
  • Na Form Controlsbarra de ferramentas, desligueDesign Mode
  • Agora, quando você clica na célula, B1o nome do filme exibido deve mudar
  • Feche as barras de ferramentas se desejar
  • Antes de salvar a planilha, você pode desativar Tools > Options > OpenOffice.org Calc > Viewe desativar Window: Column Headers and Rows, e para obter uma aparência bem limpa (talvez seja necessário ativá-los novamente na próxima vez Horizontal Scroll Barsque criar uma nova planilha em branco)Vertical Scroll BarsSheet tabs
  • Salve sua planilha
  • ???
  • Lucro

Seletor de filmes

Responder4

Para facilitar, numere os DVDs na coluna A e coloque os nomes dos DVDs na coluna B (você pode usar a fórmula A2 = A1 + 1para numerar se quiser facilitar ainda mais).

Suponha que n = o número de linhas acima de onde os DVDs começam, como se você tivesse rótulos de coluna.

=INDEX(B:B, RANDBETWEEN(1, MAX(A:A)) + n, 1) 

informação relacionada