Temos uma pasta de trabalho do Excel 2013 que usamos quando criamos novas contas de usuário (coluna A para o primeiro nome, coluna B para o sobrenome, coluna C para a senha, etc.).
First name Last name Password
John Doe #s$r28
Jane Doe #s$r29
Some User #s$r30
O formato do texto da senha é basicamente algo como # s $ r28 (esta coluna está usando texto estático). Quando criamos um novo usuário, usamos a alça de preenchimento no Excel 2013 para copiar a última linha da folha para a próxima linha, o que incrementa o conteúdo da célula da coluna de senha em 1 (um) para que a senha da coluna o novo usuário na linha recém-copiada se tornaria # s $ r29, e o próximo copiado acabaria sendo # s $ r30, e assim por diante. No entanto, esse método não é o que eu chamaria de prática recomendada e não gera uma senha realmente aleatória.
Eu posso gerar uma senha aleatória simplesmente usando uma fórmula como:
=RANDBETWEEN(0,9)&CHAR(RANDBETWEEN(65,90))&CHAR(RANDBETWEEN(97,122))&CHAR(RANDBETWEEN(33,47))
Mas meu problema é que qualquer atualização da planilha do Excel faz com que a fórmula seja disparada novamente e o Excel atualiza todas as senhas anteriores exibidas para a coluna de senha inteira. Tudo bem, tecnicamente, mas a pasta de trabalho é mantida para fins históricos e eu gostaria de criar uma senha aleatória que não é atualizada toda vez que uma linha é copiada. Eu pesquisei, mas não consegui resolver meu problema. Eu não acho que eu quero substituir o conteúdo da fórmula na nova célula com os resultados da fórmula (se é que isso é possível), porque ainda precisamos copiar isso para a próxima linha sempre que criarmos o próximo usuário ( então a célula da coluna de senha precisa permanecer como uma fórmula eu acho). Então, é possível ter uma fórmula apenas disparada quando uma linha é copiada para uma nova linha? Ou é possível criar uma fórmula no Excel que só dispara uma vez? Ou há alguma outra maneira que eu não estou vendo que possa funcionar?
Obrigado antecipadamente