Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
692to696
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
692to696
692to696
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zahlen im Kombobox: Formatproblem??

Zahlen im Kombobox: Formatproblem?
06.11.2005 01:02:36
Franz
Guten Abend Fachleute,
vielleicht könnt ihr mir zu so später Stunde noch helfen:
- es werden Zahlen von z.B. 30 - 60 in eine Kombobox einer UF eingelesen, die Zahlen stehen in einem mit Namen versehenen Bereich:
cmbIndex.List = Worksheets("Tabelle1").Range("IndexListe")
- aus einer Zelle wird ein Vorgabewert übernommen, z.B. 45:
cmbIndex = ActiveSheet.[AG19]
Das Problem: klappt man das Dropdown auf, so ist in der Liste nicht der Vorgabewert 45 gewählt und blau unterlegt, sodass man z.B. mit 1 Mal "Pfeil runter" die 46 wählen könnte. Sondern die Liste beginnt mit dem obersten Wert "30", der aber nicht blau unterlegt, sondern nur eingerahmt erscheint. Ich hoffe ich konnte ausdrücken, was ich meine.
Mache ich das gleiche mit Buchstaben, dann klappt es, wie es klappen soll. Nur mit Zahlen nicht. Eine weitere Folge des möglicherweise selben Fehlers ist, dass VLookup nicht zugeordnet werden kann. Auch hier gilt wieder: mit Buchstaben funktioniert's, mit Zahlen nicht.
Ich krieg das nicht hin, hab schon mit unterschiedlichen Formaten gespielt, wird aber nix. Darum bitte ich euch um Hilfe.
Schon mal danke im Voraus und Grüße
Franz

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beispieldatei
06.11.2005 09:16:28
Erich
Hallo Franz,
da werden an zwei Stellen Zeichenketten mit Zahlen verglichen - klappt nicht.
Zwei der Prozeduren habe ich etwas geändert - so geht es:

Private Sub UserForm_Initialize()
Dim varArrayBuchstaben As Variant
Dim varArrayZahlen() As String    ' nicht Variant
Dim rg As Range, ii&
With Worksheets("Tabelle1")
ReDim varArrayZahlen(.Range("bereichZahlen").Cells.Count)
varArrayBuchstaben = .Range("bereichBuchstaben")
'                       statt: varArrayZahlen = .Range("bereichZahlen")
For Each rg In .Range("bereichZahlen")
varArrayZahlen(ii) = rg
ii = ii + 1
Next rg
cmbBuchstaben.List = varArrayBuchstaben
cmbBuchstaben = [c1]
cmbZahlen.List = varArrayZahlen
cmbZahlen = [h1]
End With
End Sub
Private Sub cmbZahlen_Change()
Me.Label4 = Application.WorksheetFunction.VLookup _
(--cmbZahlen, Worksheets("Tabelle1").Range("bereichZahlenWerte"), 2, 0)
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Toll! + Nachfrage
06.11.2005 09:32:50
Franz
Guten Morgen Erich,
erstmal vielen Dank, auf diese Richtung wär ich nicht gekommen. Und es klappt bestens, hab's größtenteils sogar verstanden :-)))
Eine kleine Frage hab ich aber noch: wofür stehen bzw. was genau bewirken die beiden "--" , die Du in die VLookup-Anweisung eingefügt hast?
Grüße
Franz
AW: Nachfrage
06.11.2005 09:42:29
Erich
Hallo Franz,
danke für deine Rückmeldung!
--"33" macht aus der Zeichenkette "33" die Zahl 33, etwas ausführlicher könnte man auch
0 - (-"33") oder 0 - (0 - "33") schreiben.
Bei -"33" wird zunächst die "33" in 33 konvertiert, das Ergebnis ist -33. Durch das zweite Minuszeichen wird die Zahl wieder positiv.
Statt --"33" kann man auch 1 * "33" schreiben - funzt auch.
Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Nachfrage
06.11.2005 09:48:37
Franz
Hallo Erich,
bedanke mich ganz herzlich - ne Menge gelernt am Sonntag vormittag :-))) - bei der ausführlichen Erklärung!! Darüber wusste ich ehrlich gestnaden, noch gar nix, hab ich ja was nachzublättern heute....
Besten Dank und einen schönen Sonntag noch
Franz
noch ne Kleinigkeit
06.11.2005 10:15:14
Franz
Hallo Erich,
hab noch einen kleinen Fehler gefunden: in der Kombo "Zahlen" steht am Ende nach der Zahl 60 noch ein leerer Eintrag. Diesen angeklickt ergibt eine Fehlermeldung bei der VLookup-Anweisung. Ließe sich zwar mit On-Error... übergehen. Aber woher kommt der Eintrag? Ließe sich der Fehler vermeiden?
Grüße
Franz
Anzeige
AW: noch ne Kleinigkeit
06.11.2005 13:59:39
Erich
Hallo Franz,
ja, war ein Flüchtigkeitsfehler von mir - hier die korrigierte Zeile:
ReDim varArrayZahlen(.Range("bereichZahlen").Cells.Count - 1)
(Cells.Count zählt von 1 bis xx, bei ReDim wird (normalerweise) von 0 an gezählt, dehalbt die "- 1".)
Grüße von Erich aus Kamp-Lintfort und einen schönen Restsonntag
AW: noch ne Kleinigkeit
06.11.2005 14:18:01
Franz
Hallo Erich,
Danke, darauf bin ich nicht gekommen. Hab's versucht mit ii = 1, damit's nicht mit "0" beginnt, hatte aber nur den umgekehrten Effekt.
Nochmals vielen Dank und beste Grüße
Franz

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige