Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

dropdown feld
#1
Hallo,

Frage:
Ist es irgendwie möglich aus einen Dropdown Feld nur die ersten vier Ziffern zu übernehmen?

Wenn ja - bitte um Hilfestellung!

Lg Ubi5


Angehängte Dateien
.xlsm   Test.xlsm (Größe: 8,96 KB / Downloads: 6)
Antworten Top
#2
Moin!
Ins Modul der Tabelle:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Err_Exit
If Not Intersect(Range("B3:B6"), Target) Is Nothing Then
  Application.EnableEvents = False
  Target = Left(Target, 4)
End If
Err_Exit:
  Application.EnableEvents = True
End Sub

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Danke Ralf - funktioniert einwandfrei!!!!

Lg Ubi5
Antworten Top
#4
Beachte, dass ich den Code noch um ein Err_Exit ergänzt habe!
Der erste Code läuft in einen Fehler, wenn man mehrere Zellen gleichzeitig löscht.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
Hi,

wenn mehrere Zellen gleichzeitig geändert werden können, dann mach ich es so:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Dim Zelle As Range
Set Bereich = Intersect(Range("B3:B6"), Target)
If Not Bereich Is Nothing Then
  Application.EnableEvents = False
  On Error Resume Next
  For Each Zelle n Bereich
    Zelle = Left(Zelle, 4)
  Next Zelle
  On Error Goto 0
  Application.EnableEvents = True
End If
End Sub
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#6
Danke für die beiden Hilfestellungen - habe noch ein kleines Problem.
Wenn ich das dropdown Feld anklicke - sehe ich nicht den ganzen Text - kann man das auch anpassen? - siehe Datei!

Lg Ubi5


Angehängte Dateien
.xlsm   Test.xlsm (Größe: 15,13 KB / Downloads: 3)
Antworten Top
#7
Hi,

ja, du musst einfach deine Spalte B breit genug machen.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#8
Hallo Helmut, dass ist mir schon bewusst, habe aber die ganze Bildschirmseite schon ausgereizt - gibt es vielleicht eine andere Möglichkeit?
Antworten Top
#9
Dies funktioniert nicht mit Datenüberprüfung, Liste!
Du könntest aber (ganz ohne VBA) Datenüberprüfung, Eingabemeldung arbeiten und das Zahlenkürzel manuell eingeben.


Angehängte Dateien Thumbnail(s)
   
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste