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

Atualizar células


Jefferson S.G.

Pergunta

Poxa! A cada passo mais um obstáculo.

Vinculei três textbox de um formulário para três células diferentes. No formulário ainda constam os botões "Alterar" e "Cancelar".

Porém, caso eu clique em qualquer um dos botões, as células são alteradas. Na verdade, antes mesmo de clicar em algum deles, as células já mudam assim que digito nas textbox e passo para a próxima. Os botões parecem que estão funcionando somente para chamar as msgbox.

Preciso que seja alterado somente se clicar em "Alterar", e manter os valores antigos se clicar em "Cancelar".

Segue o código, caso alguém possa me ajudar, desde já agradeço.

botão "Alterar"

________________________________

Private Sub CommandButton1_Click()
    If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Then
        aten = MsgBox("Preencha os campos ou clique em cancelar", vbExclamation, "Atenção")
    Else
        If IsNumeric(Me.TextBox1) And IsDate(Me.TextBox2) And IsDate(Me.TextBox3) Then
            Dim nuteis, diames, dtfat, diarestmes, duteis As Integer
            
            nuteis = TextBox1
            dtfat = Day(TextBox2) - 1
            diames = Day(TextBox3)
            diarestmes = diames - dtfat
            duteis = diarestmes - nuteis
                       
            ThisWorkbook.Worksheets("dados").Range("b2") = TextBox1.Value
            ThisWorkbook.Worksheets("geral").Range("h1") = Format(TextBox2.Value, "dd/mmm")
            ThisWorkbook.Worksheets("dados").Range("b3") = Format(TextBox3.Value, "dd/mm/yyyy")
            ThisWorkbook.Worksheets("geral").Range("f2") = duteis
            conf = MsgBox("Alterado com sucesso!", vbOKOnly + vbExclamation, "Confirmação")
        Else
            inf = MsgBox("Data ou valor inválido", vbInformation, "Informação")
        End If
         End
    End If
        End
End Sub
botão "Cancelar" __________________________________________
Private Sub CommandButton2_Click()
    End
End Sub

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Veja se a propriedade LinkedCell ou ControlSource dos TextBoxes estão apontando para alguma célula.

Se sim, apague os dados da propriedade e deixe em branco.

Editado por João.Neto
Link para o comentário
Compartilhar em outros sites

  • 0

Sim, o ControlSource.

Na verdade eu precisava que quando o formulário fosse aberto, ficasse com as informações que já existem naquelas células para os dados que já estão lá fossem salvos novamente, caso não necessitasse de alterações.

Só que pensando bem, torna-se desnecessário, uma vez que coloquei uma msgbox antes para perguntar se realmente deseja alterar, e posteriormente critérios para a gravação dos textbox (não podem estar em branco ou com tipo de dados diferente da definida).

Muito obrigado mais uma vez João.Neto!

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,7k
×
×
  • Criar Novo...