Jump to content
Fórum Script Brasil
  • 0

dúvidas para validar checkbox


Question

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 to post
Share on other sites

Recommended Posts

  • 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 to post
Share on other 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 to post
Share on other 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 to post
Share on other 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 to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Cloud Computing


  • Forum Statistics

    • Total Topics
      148691
    • Total Posts
      644530
×
×
  • Create New...