Reinaldo / Alexandre e amigos
Obrigado pela informação.
Consegui solucionar o meu problema, mas com uma solução diferente.
Anexei o arquivo para que vcs possam ver o que fiz.
Tenho um campo com uma valor (Endereço) e gostaria de adicionar um comentário adicional após o fim deste endereço, ou seja, concatenar o endereço com este campo adicional.
Portanto, este campo de comentário, eu gostaria que fosse mostrando a quantidade de carcteres disponíveis enquanto eu fosse digitando o texto. (pois no sistema tenho uma limitação de 300 chars)
O que fiz foi o seguinte:
Criei um "text box" e adicional um "label" com o text de qtde de Carcteres disponíveis : 'Label1.Caption = 300 - Len(ws.Cells(2, 2)) & " Caracteres Disponíveis" '
O meu código ficou assim:
Dim ws As Worksheet
Private Sub TextBox1_GotFocus()
Set ws = ThisWorkbook.Sheets("Sheet1")
Label1.Caption = 300 - Len(ws.Cells(2, 2)) & " Caracteres Disponíveis" '
Me.TextBox1.WordWrap = True
End Sub
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Set ws = ThisWorkbook.Sheets("Sheet1")
If TextBox1 = "" Then
ws.Cells(13, 1) = ""
End If
If TextBox1 <> "" Then
Label1.Caption = 300 - Len(ws.Cells(2, 2)) & " Caracteres Disponíveis" '
ws.Cells(13, 1) = Me.TextBox1
If CInt(Mid(Label1.Caption, 1, InStr(1, Label1.Caption, "C") - 2)) <= -1 Then
MsgBox "A quantidade de caracteres disponível foi excedida", vbCritical, "Aviso"
Exit Sub
End If
Else
Label1.Caption = ""
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("C21")
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
Set ws = ThisWorkbook.Sheets("Sheet1")
TextBox1.Activate
TextBox1 = "."
TextBox1.SelStart = Len(TextBox1.Text)
TextBox1 = ""
Label1.Caption = 300 - Len(ws.Cells(2, 2)) & " Caracteres Disponíveis" '
End If
End Sub
Anexei a planilha para que possam ver o modelo de como ficou.
Abs e obrigado
Postado : 31/03/2014 3:19 pm