vor einiger Zeit habe ich hier sehr tolle Hilfe zur Programmierung eines Userforms erhalten.
Dies nutze ich zur Umrechung von Faktoren in einem Dokument, bei Produktwechseln.
Das Ganze Funktioniert auch super im Bereich von ganzen Zahlen größer 1, aber nun macht ein neues Produkt die Anpassung in Format kleiner 1 notwendig.
Sobald ich einen Umrechungsfaktor kleiner 1 (z.B. 0,5) eintrage, schreibt die Programmierung eine 0 in die zelle oder das Ganze stürzt ab.
Wahrscheinlich handelt es sich für erfahrene VBAler um eine simple Kleinigkeit aber ich komme ienfach darauf.
Ich freu emich auf eure Hilfe und schon einmal vielen Dank im Voraus, ich weiß dieses Forum hier sehr zu schätzen!
Hier der Code des userforms:
Private Sub CommandButton1_Click()
Dim loLetzte As Long, ws As Worksheet
Application.ScreenUpdating = False
If Me.TextBox1 "" And Me.TextBox2 "" And Me.TextBox3 "" Then
For Each ws In ActiveWorkbook.Worksheets
If WorksheetFunction.CountIf(ws.Columns(3), CLng(Me.TextBox1)) = 0 Then
Else
With ws
loLetzte = .Cells(.Rows.Count, 3).End(xlUp).Row
.Range("C1:F" & loLetzte).AutoFilter Field:=1, Criteria1:=Me.TextBox1
.AutoFilter.Range.Offset(1).Resize(.AutoFilter.Range.Rows.Count - 1).Columns(1) _
_
.SpecialCells(xlCellTypeVisible).Value = CLng(Me.TextBox2)
.AutoFilter.Range.Offset(1).Resize(.AutoFilter.Range.Rows.Count - 1).Columns(4) _
_
.SpecialCells(xlCellTypeVisible).Value = CLng(Me.TextBox3)
.AutoFilterMode = False
End With
End If
Next ws
Unload Me
Else
MsgBox "Es sind nicht alle Eingabefleder befüllt."
Me.TextBox1.SetFocus
End If
End Sub