Ir ao conteúdo
  • Cadastre-se

Formulia em vba


Posts recomendados

Senhores, bom dia.

 

 

 

Estou tentando automatizar um modelo de comentários em VBA (que inclusive não sei se é a melhor linguagem pra isso, help pl0x).

Vou tentar explicar o que quero e mostrar o que já tenho.

 

Preciso desenvolver um programa que elabore um comentário de acordo com algumas funções. Por exemplo: Ao clickar na checkbox "idade", preciso que ele printe na tela a seguinte frase "Cliente confirma: idade"; Caso mais de uma seja "checkada", como 'idade' e 'endereço anterior', a mensagem seria: "Cliente confirma: idade e endereço anterior".
Não sei se estou sendo claro, mas quero automatizar essa questão de comentários.

 

Preciso elaborar dois campos em texto que formatem os números digitados para esse formato: (xx) xxxx-xxxx ou (xx) xxxxx-xxxx.

Outro feature desse programa seria uma Combobox "Status" que teria diversas opções, e ao selecionar alguma dessas opções, ela printasse na mesma box que as informações acima, algo como "O status do pedido é: 'valor da combobox' ".

Sou totalmente leigo no assunto, tanto em programação quanto Excel. Tudo que consegui até agora foi com auxilio e tutoriais.

Se alguém puder me dar uma luz, serei bastante grato.

 

 

Muito obrigado desde já.

 

Segue os anexos e o código.

 

 




Private Sub BT_Finalizacao_Click()

Dim texthist As String
Dim textflag As String
Dim textbank As String
Dim textmom As String
Dim textage As String
Dim i As Integer
Dim j As Integer

j = 1

BT_Limpa_Click

texthist = "Histórico OK"
textflag = "Bandeira"
textbank = "Banco"
textmom = "Nome Completo da Mãe"
textage = "Idade"

If Formulario.CheckBoxHist.Value = True Then Range("A1").Value = texthist
If Formulario.CheckBoxBandeira.Value = True Then Range("A2").Value = textflag
If Formulario.CheckBoxBanco.Value = True Then Range("A3").Value = textbank
If Formulario.CheckBoxMãe.Value = True Then Range("A4").Value = textmom
If Formulario.CheckBoxIdade.Value = True Then Range("A5").Value = textage

For i = 1 To 10
    If Range("A" & i).Value <> "" Then Range("B" & i).Value = " e "
    If Range("A" & i).Value = "" Then Range("B" & i).Value = ""
Next

'Começo do código para escrever o texto:

Range("D5").Value = "Titular confirma: " + Chr(13) + Chr(10)
    ' Não entendi esse chr(13) & chr(10), ,mas pula linha...

Do While Range("B" & j).Value = ""
    j = j + 1
    Loop

Range("B" & j).Value = ""

For i = 1 To 10
    Range("D5").Value = Range("D5").Value + Range("B" & i).Value + Range("A" & i).Value
Next

'TENTAR COLOCAR NUMERO MINIMO DE BOXES CHECADOS!

End Sub

Private Sub BT_Limpa_Click()

Range("A1:A10").Value = ""
Range("B1:B10").Value = ""
Range("D5").Value = ""

End Sub

Private Sub CheckBoxBandeira_Click()

End Sub

Private Sub CheckBoxHist_Click()

End Sub

Private Sub CheckBoxIdade_Click()

End Sub

Private Sub CheckBoxMãe_Click()

End Sub

Private Sub UserForm_Click()

End Sub

 

 

Notem que o resultado aparece no Excel, mas eu gostaria que ele fosse printado na tela como um "printf" em C.

 

 

Novamente, muito obrigado!

teste1.png

Link para o comentário
Compartilhar em outros sites

@Basole Vou tentar exemplificar a aplicação dele.

Trabalho com um programa na qual eu preciso comentar a finalização do pedido, e é um processo muito chato ficar digitando toda vez. Quero padronizar e automatizar o máximo possível.
Na imagem tem a forma que eu consegui criar em alternativa para o "printf". Atribui um comando a cada check box, que quando 'checkada', manda um texto para o excel, que depois de concluido, consigo copiar e colar no campo de comentário do programa que utilizo. [EDIT] Acho que ficou parecendo que tem que ser no Excel o resultado, mas se printar em uma outra janela criada pelo programa seria melhor ainda. Por exemplo: Eu checko a box idade e nome da mãe, coloco o telefone celular, fixo e seleciono o pedido como aprovado; Preciso que o programa printe algo como "Cliente confirma: Idade e nome da mãe. Celular: (xx) xxxxx-xxxx. Fixo: (xx) xxxx-xxxx. Pedido aprovado."[/EDIT]

 

Não sei se ficou claro o que quis dizer, mas se houver dúvidas, tento esclarecer melhor.

 

 

Não consigo passar o .xlsm pra cá.

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber 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...