Ir para conteúdo
Fórum Script Brasil
  • 0

dúvidas para validar checkbox


Roberth Santos

Pergunta

Boa Noite, 

Estou com uma dúvida em relação ao uso de checkbox. Sou novo em relação a programação VBA e gostaria de saber se é possível utilizar vários checkbox e enviar para uma célula específica dentro da planilha.

No exemplo que tenho os checkbox são índices e corresponde do índice 1 ao índice 45. Gostaria de saber se é possível jogar as marcações dos índices na célula correspondente aos índices separando-os por vírgulas.

Ex: 1,3,5,7,9,11,29,30,31,40,42,45

 

Desde já agradeço

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Desculpa, sou meio leigo, para pegar os text box usei essa fórmula.

Private Sub ENVIAR_Click()
Dim i As Integer
    i = 0
    Set xcell = Planilha7.Cells(5, 2)
    
    Do While (True)
        If IsEmpty(xcell.Offset(i, 0)) Then
            xcell.Offset(i, 0) = DT.Value
            xcell.Offset(i, 1) = IDD.Value
            xcell.Offset(i, 2) = APROVAÇÃO.Text
               
            
            
    
        Exit Do
        Else
            If i > 10000 Then
                Exit Do
            End If
        End If
        i = i + 1
    Loop
        MsgBox "Dados Salvos com Sucesso"
End Sub
 Onde irei jogar os checkboxs?

Link para o comentário
Compartilhar em outros sites

  • 0

Private Sub ENVIAR_Click()
Dim i As Integer
    i = 0
    Set xcell = Planilha7.Cells(5, 2)
    
    Do While (True)
        If IsEmpty(xcell.Offset(i, 0)) Then
            xcell.Offset(i, 0) = DT.Value
            xcell.Offset(i, 1) = IDD.Value
            xcell.Offset(i, 2) = APROVAÇÃO.Text
            xcell.Offset(i, 3) = ÍNDICE1.Value
            xcell.Offset(i, 3) = ÍNDICE2.Value
            xcell.Offset(i, 3) = ÍNDICE3.Value
            xcell.Offset(i, 3) = ÍNDICE4.Value
            xcell.Offset(i, 3) = ÍNDICE5.Value
            xcell.Offset(i, 3) = ÍNDICE6.Value
            xcell.Offset(i, 3) = ÍNDICE7.Value
            xcell.Offset(i, 3) = ÍNDICE8.Value
            xcell.Offset(i, 3) = ÍNDICE9.Value
            xcell.Offset(i, 3) = ÍNDICE10.Value
            xcell.Offset(i, 3) = ÍNDICE11.Value
            xcell.Offset(i, 3) = ÍNDICE12.Value
            xcell.Offset(i, 3) = ÍNDICE13.Value
            xcell.Offset(i, 3) = ÍNDICE14.Value
            xcell.Offset(i, 3) = ÍNDICE15.Value
            xcell.Offset(i, 3) = ÍNDICE16.Value
            xcell.Offset(i, 3) = ÍNDICE17.Value
            xcell.Offset(i, 3) = ÍNDICE18.Value
            xcell.Offset(i, 3) = ÍNDICE19.Value
            xcell.Offset(i, 3) = ÍNDICE20.Value
            xcell.Offset(i, 3) = ÍNDICE21.Value
            xcell.Offset(i, 3) = ÍNDICE22.Value
            xcell.Offset(i, 3) = ÍNDICE23.Value
            xcell.Offset(i, 3) = ÍNDICE24.Value
            xcell.Offset(i, 3) = ÍNDICE25.Value
            xcell.Offset(i, 3) = ÍNDICE26.Value
            xcell.Offset(i, 3) = ÍNDICE27.Value
            xcell.Offset(i, 3) = ÍNDICE28.Value
            xcell.Offset(i, 3) = ÍNDICE29.Value
            xcell.Offset(i, 3) = ÍNDICE30.Value
            xcell.Offset(i, 3) = ÍNDICE31.Value
            xcell.Offset(i, 3) = ÍNDICE32.Value
            xcell.Offset(i, 3) = ÍNDICE33.Value
            xcell.Offset(i, 3) = ÍNDICE34.Value
            xcell.Offset(i, 3) = ÍNDICE35.Value
            xcell.Offset(i, 3) = ÍNDICE36.Value
            xcell.Offset(i, 3) = ÍNDICE37.Value
            xcell.Offset(i, 3) = ÍNDICE38.Value
            xcell.Offset(i, 3) = ÍNDICE39.Value
            xcell.Offset(i, 3) = ÍNDICE40.Value
            xcell.Offset(i, 3) = ÍNDICE41.Value
            xcell.Offset(i, 3) = ÍNDICE42.Value
            xcell.Offset(i, 3) = ÍNDICE43.Value
            xcell.Offset(i, 3) = ÍNDICE44.Value
            xcell.Offset(i, 3) = ÍNDICE45.Value
            
            
            
        Exit Do
        Else
            If i > 10000 Then
                Exit Do
            End If
        End If
        i = i + 1
    Loop
        MsgBox "Dados Salvos com Sucesso"
End Sub

Quero o valor dos índices ali separado por vírgulas.
image.png.830f9826215a8f4d6ae36954bce2ebaa.png

Link para o comentário
Compartilhar em outros sites

  • 0

No exemplo abaixo você mudar o formato de colunas para linhas:

Olha se você acompanha o pensamento. O cadastro em nova linha tem que verificar se estar selecionado índice (45 vezes)

Então vai ser preciso fazer um "loop" para olhar 45 vezes passando de índice para índice.

for x = 1 to 45 step 1
      xcell.Offset(i, 0) = DT.Value
      xcell.Offset(i, 1) = IDD.Value
      xcell.Offset(i, 2) = APROVAÇÃO.Text
      xcell.Offset(i, 3) = me.("ÍNDICE" & x).Value
      i = i + 1
next x

 

image.png

Link para o comentário
Compartilhar em outros sites

  • 0

xcell.Offset(i, 0) = DT.Value
xcell.Offset(i, 1) = IDD.Value
xcell.Offset(i, 2) = APROVAÇÃO.Text
'limpa para inserir novos dados
xcell.Offset(i, 3) = ""
for x = 1 to 45 step 1
 xcell.Offset(i, 3) = xcell.Offset(i, 3).value & me.("ÍNDICE" & x).Value
 if x <> 45 then
  xcell.Offset(i, 3) = xcell.Offset(i, 3).value & ", "
 end if
next x

Tenta esse comando então. 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...