Excel VBA TextBox előre definiált értékadás
2016-01-12T20:34:33+01:00
2016-01-13T14:35:45+01:00
2022-08-09T23:05:29+02:00
ubul81
Sziasztok!

Autodidakta módon próbálom elsajátítani a VBA lehetőségeit MSExcelben, és most belefutottam egy általam nem megoldható problémába, ami a következő:

UserForm(ok)on elhelyezett TextBox(ok)-ba szeretném ha a felhasználó adatot töltene be. Miként tudom deklarálni, hogy mondjuk csak egész számot, vagy csak dátumot tudjon rögzíteni?

Találtam egy kódrészletet, mely nem engedi a stringet, de a tizedesvesszőt igen, viszont a negatív számot nem:

Private Sub TextBox1_Change()
   OnlyNumbers
End Sub

Private Sub OnlyNumbers()
   If TypeName(Me.ActiveControl) = "TextBox" Then
       With Me.ActiveControl
           If Not IsNumeric(.Value) And .Value <> vbNullString Then
               MsgBox "Sorry, only numbers allowed"
               .Value = vbNullString
           End If
       End With
   End If
End Sub

Nincs valami "pofon egyszerű" algoritmus/deklaráció... mint az excel felületen az adatérvényesítés?

Előre is köszi a segítséget!
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd