Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
992to996
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
992to996
992to996
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler in IF Prüfung via Array_Ansatz vorh.

Fehler in IF Prüfung via Array_Ansatz vorh.
17.07.2008 09:41:40
Andreas
Hallo Herber Fans,
ich habe ein Problem mit dem ersetzen, bzw. dem Kombinieren einer IF Prüfung mit einem Array in VBA. Wenn ich in einer IF Prüfung mehrere Werte durch OR verknüpfe, so erhalte ich zum Teil sehr lange Codezeilen, die es unübersichtlich machen. Aus dem Arbeiten mit Formeln kenne ich die Arrays und möchte dieses Ansatz nun auf VBA übertragen.
Ich möchte alle meine Referenzen, gegen die IF prüfen soll in einem Array auflisten. Ich habe hier im Forum nach diversen Ansätzen gesucht und mir dann auch einen Code erstellt, der jedoch die verschiedensten Fehlermeldungen ausgab, die ich mit dem Forum auch analysieren wollte, aber nur einen Fehler durch einen anderen ersetzt habe.
Ich habe einen Ansatz gefunden, der auch durchläuft, aber er ist kein Array in Reinkultur sondern eine For Each Schleife.
https://www.herber.de/bbs/user/53885.xls
Ich würde mich freuen, wenn mir jemand sagen kann, wo mein Denkfehler liegt. Ist diese Array Lösung überhaupt realisierbar? Es läßt mir keine Ruhe…
Vielen Dank und Grüße, Andreas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler in IF Prüfung via Array_Ansatz vorh.
17.07.2008 09:57:29
Tino
Hallo,
habe mir mal deine Datei angesehen.
1. Du musst Referenz als Variant Datentyp Deklarieren
2. Die Zuweisung der Array an Referenz
3. Schleifendurchlauf bis zum letzten Datensatz in der Array „UBound..“

Sub IFArrayTest_2()
Dim pvTable As PivotTable
Dim pvField As PivotField
Dim Referenz As Variant
Dim i As Long
Referenz = Array("Farbe", "Rigips")                         '
Set pvTable = ActiveSheet.PivotTables(1)
For Each pvField In pvTable.PageFields
For i = 0 To UBound(Referenz)
If pvField.DataRange.Value = Referenz(i) Then
Debug.Print "Treffer"
End If
Next
Next
End Sub


Gruß Tino

www.VBA-Excel.de


Anzeige
AW: Fehler in IF Prüfung via Array_Ansatz vorh.
17.07.2008 10:03:37
Andreas
Hallo Tino,
vielen, vielen Dank! Der Code läuft dank Deiner Modifikationen nun perfekt durch. So wie ich es mir vorstellte. Es waren kleine Fehler drin, aber davon dann doch drei Stück... Nun habe ich eine Referenz und kann damit weiterarbeiten.
Dir noch einen schönen Donnerstag!
Grüße, Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige