Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Textbox não salva número na planilha
Textbox não salva número na planilha
Nessa planilha quando salvo dados através da textbox, ele salva como texto e isso não permite que eu faça cálculos nem de números e nem de horas. Tentei usar o comando:
Private Sub cx_abastec_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_abastec = Format(cx_abastec, "###")
Cancel = False
End Sub
Porém quando saio da planilha e a reabro, os dados estão salvos como texto. Por favor, me ajudem.
Não consigo anexar a planilha, pois diz que a extensão de arquivo é inválida.
Private Sub cx_abastec_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_abastec = Format(cx_abastec, "###")
Cancel = False
End Sub
Porém quando saio da planilha e a reabro, os dados estão salvos como texto. Por favor, me ajudem.
Não consigo anexar a planilha, pois diz que a extensão de arquivo é inválida.
-
- Colaborador
- Mensagens: 19
- Registrado em: Qui Mar 24, 2016 10:07 am
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Textbox não salva número na planilha
Por padrão (default) um textbox retorna uma string/texto.
O trecho/código acima somente formata a visualização da string/texto, mantendo sua característica.
Como Voçe não postou a rotina que "salva" na planilha, suponho que seja algo +/- assim:
SuaCelula=cx_abastec.txt
Assim para salvar valores utilize uma das funções de conversão.
Por exemplo SuaCelula=cdec(cx_abastec.txt)
Para horas ou data experimete utiliza Cdate
O trecho/código acima somente formata a visualização da string/texto, mantendo sua característica.
Como Voçe não postou a rotina que "salva" na planilha, suponho que seja algo +/- assim:
SuaCelula=cx_abastec.txt
Assim para salvar valores utilize uma das funções de conversão.
Por exemplo SuaCelula=cdec(cx_abastec.txt)
Para horas ou data experimete utiliza Cdate
Re: Textbox não salva número na planilha
a planilha não consegue ser anexada, pois dá a mensagem de arquivo inválido.
Re: Textbox não salva número na planilha
Professor Reinaldo, veja como está completo:
Private Sub botao_sair_Click()
Unload BT01
Worksheets("capa").Select
End Sub
Private Sub botao_salvar_Click()
'1- Para escolher em qual planilha serão salvos os dados
Worksheets("BT01").Select
'2- Vamos criar uma variável para salvar sempre na próxima linha vazia
totalregistro = Worksheets("BT01").UsedRange.Rows.Count + 1
'3- o que será preenchido em cada célula
Cells(totalregistro, 1) = cx_dia
Cells(totalregistro, 2) = cx_mes
Cells(totalregistro, 3) = cx_ano
Cells(totalregistro, 4) = cx_hor_inicio
Cells(totalregistro, 5) = cx_hor_final
Cells(totalregistro, 6) = cx_abastec
Cells(totalregistro, 7) = cx_hs_parada
Cells(totalregistro, 8) = cx_hs_manut
Cells(totalregistro, 9) = cx_obra
Cells(totalregistro, 10) = cx_observ
'4- inserir mensagem de sucesso na gravação dos dados
MsgBox "Dados inseridos com sucesso"
'5-para limpar as caixas
cx_dia = ""
cx_mes = ""
cx_ano = ""
cx_hor_inicio = ""
cx_hor_final = ""
cx_abastec = ""
cx_hs_parada = ""
cx_hs_manut = ""
cx_obra = ""
cx_observ = ""
'6- para o cursor voltar na primeira caixa
cx_dia.SetFocus
'7- PARA SALVAR OS DADOS QUANDO SAIR DA PLANILHA
ActiveWorkbook.Save
End Sub
'8- para formatar as caixas em numeros
Private Sub cx_abastec_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_abastec = Format(cx_abastec, "###")
Cancel = False
End Sub
Private Sub cx_ano_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_ano = Format(cx_ano, "####")
Cancel = False
End Sub
Private Sub cx_dia_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_dia = Format(cx_dia, "##")
Cancel = False
End Sub
Private Sub cx_hor_final_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hor_final = Format(cx_hor_final, "####")
Cancel = False
End Sub
Private Sub cx_hor_inicio_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hor_inicio = Format(cx_hor_inicio, "####")
Cancel = False
End Sub
'9- para formatar as caixas em horas
Private Sub cx_hs_manut_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hs_manut = Format(cx_hs_manut, "hh:mm")
Cancel = False
End Sub
Private Sub cx_hs_parada_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hs_parada = Format(cx_hs_parada, "hh:mm")
Cancel = False
End Sub
Private Sub UserForm_Initialize()
'preencher caixa de dias, meses e anos
cx_dia.AddItem "1"
cx_dia.AddItem "2"
cx_dia.AddItem "3"
cx_dia.AddItem "4"
cx_dia.AddItem "5"
cx_dia.AddItem "6"
cx_dia.AddItem "7"
cx_dia.AddItem "8"
cx_dia.AddItem "9"
cx_dia.AddItem "10"
cx_dia.AddItem "11"
cx_dia.AddItem "12"
cx_dia.AddItem "13"
cx_dia.AddItem "14"
cx_dia.AddItem "16"
cx_dia.AddItem "17"
cx_dia.AddItem "18"
cx_dia.AddItem "19"
cx_dia.AddItem "20"
cx_dia.AddItem "21"
cx_dia.AddItem "22"
cx_dia.AddItem "23"
cx_dia.AddItem "24"
cx_dia.AddItem "25"
cx_dia.AddItem "26"
cx_dia.AddItem "27"
cx_dia.AddItem "28"
cx_dia.AddItem "29"
cx_dia.AddItem "30"
cx_dia.AddItem "31"
cx_mes.AddItem "Janeiro"
cx_mes.AddItem "Fevereiro"
cx_mes.AddItem "Março"
cx_mes.AddItem "Abril"
cx_mes.AddItem "Maio"
cx_mes.AddItem "Junho"
cx_mes.AddItem "Julho"
cx_mes.AddItem "Agosto"
cx_mes.AddItem "Setembro"
cx_mes.AddItem "Outubro"
cx_mes.AddItem "Novembro"
cx_mes.AddItem "Dezembro"
cx_ano.AddItem "2012"
cx_ano.AddItem "2013"
cx_ano.AddItem "2014"
cx_ano.AddItem "2015"
cx_ano.AddItem "2016"
cx_ano.AddItem "2017"
cx_ano.AddItem "2018"
cx_ano.AddItem "2019"
cx_ano.AddItem "2020"
End Sub
Private Sub botao_sair_Click()
Unload BT01
Worksheets("capa").Select
End Sub
Private Sub botao_salvar_Click()
'1- Para escolher em qual planilha serão salvos os dados
Worksheets("BT01").Select
'2- Vamos criar uma variável para salvar sempre na próxima linha vazia
totalregistro = Worksheets("BT01").UsedRange.Rows.Count + 1
'3- o que será preenchido em cada célula
Cells(totalregistro, 1) = cx_dia
Cells(totalregistro, 2) = cx_mes
Cells(totalregistro, 3) = cx_ano
Cells(totalregistro, 4) = cx_hor_inicio
Cells(totalregistro, 5) = cx_hor_final
Cells(totalregistro, 6) = cx_abastec
Cells(totalregistro, 7) = cx_hs_parada
Cells(totalregistro, 8) = cx_hs_manut
Cells(totalregistro, 9) = cx_obra
Cells(totalregistro, 10) = cx_observ
'4- inserir mensagem de sucesso na gravação dos dados
MsgBox "Dados inseridos com sucesso"
'5-para limpar as caixas
cx_dia = ""
cx_mes = ""
cx_ano = ""
cx_hor_inicio = ""
cx_hor_final = ""
cx_abastec = ""
cx_hs_parada = ""
cx_hs_manut = ""
cx_obra = ""
cx_observ = ""
'6- para o cursor voltar na primeira caixa
cx_dia.SetFocus
'7- PARA SALVAR OS DADOS QUANDO SAIR DA PLANILHA
ActiveWorkbook.Save
End Sub
'8- para formatar as caixas em numeros
Private Sub cx_abastec_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_abastec = Format(cx_abastec, "###")
Cancel = False
End Sub
Private Sub cx_ano_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_ano = Format(cx_ano, "####")
Cancel = False
End Sub
Private Sub cx_dia_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_dia = Format(cx_dia, "##")
Cancel = False
End Sub
Private Sub cx_hor_final_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hor_final = Format(cx_hor_final, "####")
Cancel = False
End Sub
Private Sub cx_hor_inicio_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hor_inicio = Format(cx_hor_inicio, "####")
Cancel = False
End Sub
'9- para formatar as caixas em horas
Private Sub cx_hs_manut_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hs_manut = Format(cx_hs_manut, "hh:mm")
Cancel = False
End Sub
Private Sub cx_hs_parada_Exit(ByVal Cancel As MSForms.ReturnBoolean)
cx_hs_parada = Format(cx_hs_parada, "hh:mm")
Cancel = False
End Sub
Private Sub UserForm_Initialize()
'preencher caixa de dias, meses e anos
cx_dia.AddItem "1"
cx_dia.AddItem "2"
cx_dia.AddItem "3"
cx_dia.AddItem "4"
cx_dia.AddItem "5"
cx_dia.AddItem "6"
cx_dia.AddItem "7"
cx_dia.AddItem "8"
cx_dia.AddItem "9"
cx_dia.AddItem "10"
cx_dia.AddItem "11"
cx_dia.AddItem "12"
cx_dia.AddItem "13"
cx_dia.AddItem "14"
cx_dia.AddItem "16"
cx_dia.AddItem "17"
cx_dia.AddItem "18"
cx_dia.AddItem "19"
cx_dia.AddItem "20"
cx_dia.AddItem "21"
cx_dia.AddItem "22"
cx_dia.AddItem "23"
cx_dia.AddItem "24"
cx_dia.AddItem "25"
cx_dia.AddItem "26"
cx_dia.AddItem "27"
cx_dia.AddItem "28"
cx_dia.AddItem "29"
cx_dia.AddItem "30"
cx_dia.AddItem "31"
cx_mes.AddItem "Janeiro"
cx_mes.AddItem "Fevereiro"
cx_mes.AddItem "Março"
cx_mes.AddItem "Abril"
cx_mes.AddItem "Maio"
cx_mes.AddItem "Junho"
cx_mes.AddItem "Julho"
cx_mes.AddItem "Agosto"
cx_mes.AddItem "Setembro"
cx_mes.AddItem "Outubro"
cx_mes.AddItem "Novembro"
cx_mes.AddItem "Dezembro"
cx_ano.AddItem "2012"
cx_ano.AddItem "2013"
cx_ano.AddItem "2014"
cx_ano.AddItem "2015"
cx_ano.AddItem "2016"
cx_ano.AddItem "2017"
cx_ano.AddItem "2018"
cx_ano.AddItem "2019"
cx_ano.AddItem "2020"
End Sub
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Textbox não salva número na planilha
Se não meengano, o arquivo para ser anexado deve estar compactado (Zip,7z,Rar....).
No seu codigo a rotina que salva os dados na planilha e -->Private Sub botao_salvar_Click()
Pelas demais rotinas suponho que: cx_dia; cx_mes; cx_ano; cx_hor_inicio; cx_hor_final e cx_abastec são numeros inteiros, pode utilizar a função de conversão Val. Para hs utilize TimeValue.
Tente algo +/- assim:
Obs.: Formate previamente as colunas que irão receber os dados com o formato desejado
No seu codigo a rotina que salva os dados na planilha e -->Private Sub botao_salvar_Click()
Pelas demais rotinas suponho que: cx_dia; cx_mes; cx_ano; cx_hor_inicio; cx_hor_final e cx_abastec são numeros inteiros, pode utilizar a função de conversão Val. Para hs utilize TimeValue.
Tente algo +/- assim:
Código: Selecionar todos
'3- o que será preenchido em cada célula
Cells(totalregistro, 1) = Val(cx_dia)
Cells(totalregistro, 2) = Val(cx_mes)
Cells(totalregistro, 3) = Val(cx_ano)
Cells(totalregistro, 4) = Val(cx_hor_inicio)
Cells(totalregistro, 5) = Val(cx_hor_final)
Cells(totalregistro, 6) = Val(cx_abastec)
Cells(totalregistro, 7) = TimeValue(cx_hs_parada)
Cells(totalregistro, 8) = TimeValue(cx_hs_manut)
Cells(totalregistro, 9) = cx_obra
Cells(totalregistro, 10) = cx_observ
Re: Textbox não salva número na planilha
Caros Professor Reinaldo e Danilo Samba, consegui mandar a planilha compactando-a.
vou tentar o código.
obrigado,
vou tentar o código.
obrigado,
-
- Colaborador
- Mensagens: 27
- Registrado em: Sex Fev 04, 2011 4:41 pm
- Localização: São Paulo
Re: Textbox não salva número na planilha
Caraca Reinaldo era tudo que eu estava buscando á dias.... Valeu