Ir ao conteúdo
  • Cadastre-se

Como gerar protocolo automático no Excel?


Ribanauta

Posts recomendados

Olá amigos do Clube do Hardware,

Estou tentando desenvolver uma planilha em Excel para registro de entrada de cirurgias na unidade de saúde em que trabalho. Tomem por base o Excel 97, visto que utilizo o 2000 em casa e o 2010 no trabalho.

Estou desenvolvendo os códigos no VBA, pela necessidade de geração automatica de dados de data e hora de entrada, além de um protocolo de letras fixas e numeros sequenciais, que tem sido a minha dor de cabeça nessa tarefa. O VBA ainda me ajuda a dificultar a alteração das formulas por pessoas não autorizadas.

Consegui o código que gera data e hora de entrada automaticamente quando inserido o nome do paciente, essa parte funcionou perfeitamente. Mas preciso também que o sistema gere um número único de protocolo no mesmo momento em que é inserido o nome. O protocolo deve ser composto de três letras XXX, que irão identificar o profissional médico, acrescidos de numeração sequencial automática de 4 dígitos. Ficando, por exemplo, no seguinte formato:

XXX0001

XXX0002

Estou adicionando ao tópico 3 imagens da planilha. A primeira com a planilha crua. Na segunda eu insiro o nome do paciente e estão gerados data e hora da entrada, na coluna protocolo eu inseri os dados manualmente para demonstrar como eu quero que a planilha funcione. E na terceira está printado o editor do VBA com os códigos, na forma em que se encontram, como tentei fazer para funcionar do modo que eu quero com a informação que tenho disponível no momento...

Também estou adicionando o link com a planilha para download.

http://s1289.beta.photobucket.com/user/Ribanauta/media/cirg_zps8150a8bb.jpg.html

http://s1289.beta.photobucket.com/user/Ribanauta/media/cirg1_zps5856512c.jpg.html

http://s1289.beta.photobucket.com/user/Ribanauta/media/cirg2_zps7be3fa7c.jpg.html

http://depositfiles.com/files/mh28h4lcc

Aguardo ansioso pela ajuda dos colegas de forum. Esta planilha faz parte de um projeto de reestruturação importante aqui na unidade. A ajuda de vocês beneficiará muitas pessoas, além do que, acredito que muitos usuários do forum poderão utilizar as informações para adaptar a planilha as suas necessidades.

Um abraço!

Link para o comentário
Compartilhar em outros sites

Substitua o código atual por este abaixo.

O outro código, Sub Protocolo, pode ser excluido, não tem utilidade.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 Or Target.Row < 5 Then Exit Sub
If Target.Value = "" Then
Target.Offset(, -1) = ""
Target.Offset(, 5) = ""
Else:
Target.Offset(, -1) = Now
Target.Offset(, 5) = [G3] & Format(Target.Offset(, 6), "0000")
End If
End Sub

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!