Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
#40365
Gente,

O botao editar de um form para cadastro possui o codigo abaixo mas nao consigo fazer de jeito nenhum retornar outro valor que nao seja verdadeiro ou falso para check box, ja tentei com IF e não muda. Gostaria que retornasse sim ou não

Private Sub CommandButton4_Click()
Dim codigo As Integer

linha = 1
codigo = txtData

Sheets("dados clientes").Select
Do Until Sheets("dados clientes").Cells(linha, 1) = ""
If Sheets("dados clientes").Cells(linha, 1) = codigo Then
Sheets("dados clientes").Cells(linha, 1).Select


ActiveCell.Offset(0, 1).Select
ActiveCell = txtCPF

ActiveCell.Offset(0, 1).Select
ActiveCell = txtNome

ActiveCell.Offset(0, 1).Select
ActiveCell = CheckBoxfopa

End If

linha = linha + 1

Loop

Call cmdPequisar_Click

End Sub
#40367
renanvba escreveu:... mas nao consigo fazer de jeito nenhum retornar outro valor que nao seja verdadeiro ou falso para check box, ...
Quais outros valores você gostaria que a CheckBox retornasse ?

Você poderia citar 3 ou 4 desses outros valores que fariam você feliz ?
#40369
Então, eu tenho varios check box em outros pedaços do form. E eu queria na verdade um botão que gravasse e editasse ao mesmo tempo. O que acontece é que estava criando uma nova linha ao invés de editar
Enfim...consegui por esse código fazer isso, porem, os check box retornam os valores de "verdadeiro" ou "falso" e eu preciso que retorne "sim" e ""; ou "1" e "", ou "0,5" e ""...
Os numeros sao usados em outras formulas depois e tenho diversas condicoes "Se"por isso não pode retornar apenas verdadeiro e falso
#40371
Um CheckBox retorna Verdadeiro se estiver marcado e retorna Falso se não estiver, nada além disso.
No entanto você pode manipular esses dois possíveis resultados.
Assim, por exemplo, você pode transformar V em -1 e F em zero, com o código abaixo.
Código: Selecionar todos
Private Sub CommandButton1_Click()
 Dim num As Long
  num = CheckBox1 + 0
  MsgBox num
End Sub
Ou você pode transformar os resultados em textos, conforme o código abaixo.
Se estiver marcado atribui "sim" à variável var, se não, atribui vazio.
Código: Selecionar todos
Private Sub CommandButton1_Click()
 Dim var As String
  If CheckBox1 Then
   var = "sim"
  Else: var = ""
  End If
End Sub
#40374
ActiveCell = CheckBoxfopa

1. o que você quer colocar na célula ativa se a CheckBox estiver marcada ?
2. idem, se estiver desmarcada ?
#40376
Código: Selecionar todos
 If CheckBox1 Then
   ActiveCell.Value = "Sim"
  Else: ActiveCell.Value = "Não"
  End If
Código: Selecionar todos
 If CheckBox2 Then
   ActiveCell.Value = 1
  Else: ActiveCell.Value = 0
  End If
obs.
1. substitua nos códigos acima CheckBox1 e 2 pelos seus respectivos nomes do seu projeto
2. se não houver uma razão então não coloque os números 1 e zero entre aspas
#40378
O código ficou assim:

Private Sub CommandButton4_Click()

Dim codigo As Integer

linha = 1
codigo = txtData

Sheets("dados clientes").Select
Do Until Sheets("dados clientes").Cells(linha, 1) = ""
If Sheets("dados clientes").Cells(linha, 1) = codigo Then
Sheets("dados clientes").Cells(linha, 1).Select


ActiveCell.Offset(0, 1).Select
ActiveCell = txtCPF

ActiveCell.Offset(0, 1).Select
ActiveCell = txtNome

ActiveCell.Offset(0, 1).Select
If CheckBoxfopa Then
ActiveCell.Value = "Sim"
Else: ActiveCell.Value = "Não"
End If


End If

linha = linha + 1

Loop

Call cmdPequisar_Click
#40380
cada hora é uma coisa:

Consegui resolver a questão acima.
Porem, eu clico no checkbox ele me da sim ou "" blz...
Quando filtro o mesmo nome e aperto editar ele apaga a informação do checkbox...
O checkbox aparece marcado (na segunda vez que filtro os dados) mas fica meio cinza como se nao desse pra mexer..
#40383
renanvba escreveu:cada hora é uma coisa:
Consegui resolver a questão acima.
Você abriu este tópico com "Check Box não retorna outros valores- Condição IF não funcio", que me parece foi solucionado. Então sugiro que você marque este tópico como resolvido e abra outro para a nova demanda.
No novo tópico anexe uma amostra do seu arquivo Excel com o Form e os códigos instalados e descreva com exatidão na própria planilha quais os problemas que você está enfrentando.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord