Ir ao conteúdo

Posts recomendados

Postado

Bom dia!!!!

 

Estou criando um formulário no word e preciso que ele gere automaticamente uma numeração sequencial (pode começar do 001, por exemplo).

Eu encontrei orientações de como fazer isso , mas não consegui executar e o tópico está fechado para comentários.

 

Alguém poderia me socorrer, por favor?

 

Segue em anexo os formulários


OBS: se puderem me orientar com mais detalhes, eu travei quando ele fala "copiar o código abaixo em  um módulo", não consegui identificar que modulo seria este.

 

 

OBS:2 se não for pedir muito, é possível fazer com que o word copie no campo printado abaixo o valor total informado na coluna "R$ A Ser Reembolsado"?

 

image.png.32cbaed7266fc0b112b240fe771ce7ac.png

 

 

Desde já agradeço a atenção

 

 

image.png

Nota_debito_avipet.docx Nota_debito_center.docx

Postado
1 hora atrás, Ileusis Luna disse:

OBS: se puderem me orientar com mais detalhes, eu travei quando ele fala "copiar o código abaixo em  um módulo", não consegui identificar que modulo seria este.

É no Editor VBA, procure tutoriais no Youtube sobre como criar Macros VBA

adicionado 17 minutos depois

Encontrei um tutorial sobre o assunto
https://www.profissionaisti.com.br/2014/03/criar-formularios-com-macros-no-microsoft-word/

Postado
1 hora atrás, f_neto disse:

É no Editor VBA, procure tutoriais no Youtube sobre como criar Macros VBA

adicionado 17 minutos depois

Encontrei um tutorial sobre o assunto
https://www.profissionaisti.com.br/2014/03/criar-formularios-com-macros-no-microsoft-word/

Obrigada!

 

 

Encontrei uma seqüência de aulas no youtube, vou assisti-las, mas para agora não vai dar. Vou manter o controle manual dos formulários, tem detalhes demais para aprender em 5 minutos. Até tentei dar continuidade no tutorial do link que coloquei acima, mas tem algo mais que não estou enxergando, o código não está funcionando. 

 

Do link que me passou, só ensina fazer o formulário básico, mas muito obrigada!

  • Solução
Postado

@Ileusis Luna veja se esta sugestao em vba lhe atende.

image.png.d76c4c40722a4f03c61af16ba6782d47.png

Para armazenar a contagem de incremento da autonumeracao é necessario um arquivo texto que esta definido para ficar na mesma pasta do arquivo Word.

Ao abrir o arquivo word, o campo autonumeracão, incrementará para + 1 

 

image.png.e35183bd733f6e462fa3c5521ec8cf74.png

* Para a autonumeracào iniciar a partir de 1 por exemplo, edite o arquivo Autonure.txt e coloque na linha oNum = 0 

 

 

Nota_debito_center.zip

  • Amei 1
Postado

Na verdade, parece que estou perto de acertar, só que ao invés de criar um codigo novo, o arquivo pega o mesmo anterior.

 

POde me apontar onde estou errando?

image.png.12b4891c1a61b82bd6f80650440d8982.png

 

Sub Cartanumerada()

On Error GoTo Erro

Documents.Add Template:="Nota_debito_center"

DocDir$ = "Z:\Logística\NOTA DEBITO"

ArqIni$ = "Z:\Logística\NOTA DEBITO"

AnoAtual$ = Year(Now())

If ArquivoExiste(ArqIni$) <> -1 Then

   Call ZeraContagem(AnoAtual$, ArqIni$)

Else

   AnoIni$ = System.PrivateProfileString$(ArqIni$, "Contador", "Ano")

   DIf = Val(AnoAtual$) - Val(AnoIni$)

   If DIf > 0 Then

       Call ZeraContagem(AnoAtual$, ArqIni$)

   ElseIf DIf < 0 Then

       MsgBox "Erro no relógio do micro ou arquivo INI adulterado."

       GoTo Fim

   End If

End If

nuMicrosoft = System.PrivateProfileString$(ArqIni$, "Contador", "CartaNum")

n = Val(nuMicrosoft) + 1

Valor$ = Right$("001" & n, 3)

AnoAtual$ = Right$(AnoAtual$, 2)

NovoTexto$ = Valor$ + "/" + AnoAtual$

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

With Selection.Find

.Text = "Autonumeração"

.Replacement.Text = NovoTexto$

.Forward = True

.Wrap = wdFindContinue

End With

Selection.Find.Execute Replace:=wdReplaceAll

nomedoc$ = DocDir$ + Valor$ + "-" + AnoAtual$ + ".doc"

If ArquivoExiste(nomedoc$) = -1 Then

   MsgBox "O arquivo " + nomedoc$ + " já existe. Operação cancelada."

Else

   

   ActiveDocument.SaveAs FileName:=nomedoc$

   System.PrivateProfileString(ArqIni$, "Contador", "CartaNum") = Valor$

End If

GoTo Fim

Erro:

   MsgBox "Não foi possível abrir o Arquivo."

Fim:

End Sub

Function ArquivoExiste(Arq$)

On Error GoTo ArqExiste_Err

Open Arq$ For Input As #1

Close #1

ArquivoExiste = -1

GoTo FimArq

ArqExiste_Err:

   ArquivoExiste = 0

FimArq:

End Function

Sub ZeraContagem(AnoNovo$, Ini$)


System.PrivateProfileString(Ini$, "Contador", "Ano") = AnoNovo$

System.PrivateProfileString(Ini$, "Contador", "CartaNum") = "0"

End Sub
 

 

 

adicionado 3 minutos depois

@Basole Opa! Muito obrigada! Acredito que vá me ajudar sim!

 

Já salvei o arquivo na pasta, como faço para vincular o formulário ao arquivo? 

 


Grata

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...