Anzeige
Archiv - Navigation
1456to1460
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
Inhaltsverzeichnis

ComboBox Wert wird bei If Abfrage nicht erkannt

ComboBox Wert wird bei If Abfrage nicht erkannt
18.11.2015 18:58:26
Manuel

Guten Abend!
Mittels Makro wollte ich verschiedene Zellen miteinander addieren/subtrahieren. Dies soll nur mit Zellen passieren, die mit dem Suchkriterium in der ComboBox übereinstimmen.
Jedoch wird der Wert in der ComboBox nicht richtig erkannt?! Gebe ich als Suchkriterium bspw. 2013 an werden alle Zellen addiert. Steht in der ComboBox der Wert 2013 drin passiert nichts. Könnt ihr mal schauen wo mein Fehler liegt?

Sub ComboBox()
Dim lnglast As Long
lnglast = Sheets("Upload_Inventory_Hilfstabelle_p").Cells(Rows.Count, 14).End(xlUp).Row
Suchkred = CDbl(Sheets("Graphic_Inventory").ComboBox3.Value)
For z = 2 To lnglast
With Sheets("Upload_Inventory_Hilfstabelle_p")
If Cells(z, 14).Value = Suchkred Then
wert = (.Cells(1, 19) + .Cells(z, 15) - Sheets("Upload_Inventory_Hilfstabelle_n").Cells(z, 15))  _
/ 2
End If
End With
Next z
MsgBox wert
'Sheets("Graphic_Inventory").Cells(1,1).Value = wert
End Sub
Ich habe es auch schon ohne das CDbl versucht, auch ohne Erfolg. Gefüllt habe ich die Combobox einmal mit Additem und einmal mit einem Array um zu überprüfen ob es vielleicht daran liegt. Auch das blieb allerdings ohne Erfolg.
Vielen Dank!

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage
18.11.2015 19:07:34
Werner
Hallo Manuel,
was steht denn in Cells(z, 14) ?
Gruß Werner

Mal mit Runden versucht?
18.11.2015 19:14:43
Luc:-?
Hallo, Manuel;
If Round(Cells(z, 14).Value, n) = Round(Suchkred, n) Then für n = relevante Dezimalen­Anzahl.
Gruß, Luc :-?
Besser informiert mit …

AW: ComboBox Wert wird bei If Abfrage nicht erkannt
18.11.2015 19:37:39
Manuel
Hallo ihr beiden,
danke für die Antwort.
Runden sollte keine Option sein, da es sich nur um Jahreszahlen handelt.
In der Zelle Z,14 Steht demnach das erste Jahr.
Grüße,
Manuel

Anzeige
Warum dann 'CDbl' statt 'CLng'? Und ist das ...
18.11.2015 19:43:05
Luc:-?
…Jahr in der Zelle auch 'ne Zahl und nicht etwa Text?!
Luc :-?

AW: Warum dann 'CDbl' statt 'CLng'? Und ist das ...
18.11.2015 19:45:43
Werner
..Jahr in der Zelle vielleicht ein Datum?
Werner

AW: Warum dann 'CDbl' statt 'CLng'? Und ist das ...
18.11.2015 20:00:15
Manuel
Nein, die Zelle z, 14 ist als Standard formatiert. Ich habe es auch schonmal als Zahl formatiert gehabt, was allerdings auch nicht geholfen hat.
Mit Clng habe ich es probiert, funktioniert leider auch nicht. Habt ihr noch andere Ideen?

AW: Warum dann 'CDbl' statt 'CLng'? Und ist das ...
18.11.2015 21:08:23
fcs
Hallo Manuel,
evtl. hast du nur einen entscheidenden Punkt vergessen.
Ansonsten solltest du immer alle verwendeten Variablen deklarieren. Möglichst so, dass ihr Type den erwarteten Ergebnissen entspricht.
Gruß
Franz
Sub ComboBox()
Dim lnglast As Long
Dim Suchkred As Long 'für Jahrezahl
Dim Z As Long 'für Zeilenzähler
Dim wert As Double 'für ZRechenergebnis
lnglast = Sheets("Upload_Inventory_Hilfstabelle_p").Cells(Rows.Count, 14).End(xlUp).Row
Suchkred = CDbl(Sheets("Graphic_Inventory").ComboBox3.Value)
For Z = 2 To lnglast
With Sheets("Upload_Inventory_Hilfstabelle_p")
If .Cells(Z, 14).Value = Suchkred Then              'Punkt vor Cells vergessen?
wert = (.Cells(1, 19) + .Cells(Z, 15) - _
Sheets("Upload_Inventory_Hilfstabelle_n").Cells(Z, 15)) / 2
End If
End With
Next Z
MsgBox Format(wert, "#,##0.00")
'Sheets("Graphic_Inventory").Cells(1,1).Value = wert
End Sub

Anzeige
AW: Warum dann 'CDbl' statt 'CLng'? Und ist das ...
18.11.2015 21:47:28
Manuel
Perfekt Franz und ihre anderen vielen Dank...es war dieser eine kleine Punkt :(

Immer wieder d.gleiche VBA-TrivialFehler! :-| owT
19.11.2015 01:41:27
Luc:-?
:-?

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige