vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Unterstützung bei Dictionary (VB) 
Autor: woerny
Datum: 15.05.14 06:55

Hallo @ all,

ich versuch mich gerade allgmein etwas mit Dictionary in VB(A). Da hätte ich gleich mal Zwei Fragen.
Ich erstelle 2 Dic und befülle diese mit Beispieldaten.

Option Explicit
 
Sub dic_1D_Items()
' Verweis auf Microsoft Scripting Runtime -gesetzt-
Dim DicOne As Scripting.Dictionary ' oder As Object, wenn kein Verweis auf 
' Microsoft Scripting Runtime
Dim DicTwo As Scripting.Dictionary ' oder As Object, wenn kein Verweis auf 
' Microsoft Scripting Runtime
Dim vArr As Variant
        On Error GoTo Fehler
    Set DicOne = New Scripting.Dictionary ' dann auch CreateObject( 
    ' "Scripting.Dictionary")
    Set DicTwo = New Scripting.Dictionary ' dann auch CreateObject( 
    ' "Scripting.Dictionary")
 
    '## Angenommen wir haben eine Überschrift für unser Dictionary
    DicOne.Add "Names", 1
    DicOne.Add "Vorname", 2
    DicOne.Add "Spalte3", 3
    DicOne.Add "Spalte4", 4
    DicOne.Add "SpalteN", 5
    '## hinzufügen der Werte in mein 1. Dictionary - 1D Array
    vArr = DicOne.Keys
    '## hinzufügen der Werte in mein 2. Dictionary - 1D Array
    'WICHTIG:  +++ jeder Key, darf nur ++EINMAL++ vorkommen ("v" & x) +++
    DicTwo("v" & 1) = Array("Mustermann", "Werner", "Hamburg", "demnächst", _
      "keine")
    DicTwo("v" & 2) = Array("Müller", "Frank", "München", "bald", "wohl kaum")
    DicTwo("v" & 3) = Array("Meyer", "Katharina", "Würzburg", "niemals", "kaum")
    DicTwo("v" & 4) = Array("Wundermich", "Matthias", "Hamburg", "jawohl", _
      "bestimmt")
    DicTwo("v" & 5) = Array("Gaschba", "Thomas", "Duisburg", "Ja", "JA")
 
 
    'Werte zu KeyXYZ...  in einer Schleife ....
    Dim keyC As Integer  'SchlüsselCouonter
    Dim myRow As Long    'BeginnZeile
        myRow = 10
    ' alle Werte
    For keyC = 1 To DicTwo.Count
        Sheets(2).Range("B" & myRow).Resize(1, UBound(Application.Transpose( _
          DicOne.Keys))) = DicTwo("v" & keyC)
        myRow = myRow + 1   'nächste Zeile
    Next
 
    ' einen ****speziellen Wert/Key*******
    Dim dicItem As Variant
    Dim dicKey As Variant
    Dim searchKey As String
        searchKey = "v4"
 
' ENDE im Gelände ===>>>>> ?????? klären ...................
'    Set dicItem = DicOne.Keys(DicTwo.Item(searchKey))
    For Each dicItem In DicTwo.Keys
            If dicItem <> searchKey Then GoTo NextOne
            'Set dicKey = DicTwo.Item(dicItem)
'            For q = 0 To UBound(dicKey)
'                Debug.Print dicKey(q)
'            Next q
'            For Each dicKey In DicTwo.Item(dicItem)
'            Next dicKey
            Set dicItem = DicTwo.Item(searchKey)
'            Stop
'                Debug.Print dicKey
'            Next
'     Set dicItem = DicTwo.Items(searchKey)
'            For q = 0 To UBound(dicItem)
'                    Debug.Print dicItem(q)
'            Next
            Exit For
NextOne:
    Next
'----------------------------------------------------------
Ok:
' Variablen löschen ...
    Set DicTwo = Nothing
    Set DicOne = Nothing
        Exit Sub
Fehler:
    Debug.Print Err.Description & "|" & Err.Number
    GoTo Ok
End Sub
ab hier: ENDE im Gelände ===>>>>> ?????? klären
wollte ich .... ich bekomm es einfach nicht hin

a) wie kann ich mir die Werte zu **einem** speziellen z.B. v4 anzeigen lassen
b) wie kann ich mir alle Werte anzeigen lassen, die in Hamburg (wohnen)

Freu mich über Infos von euch

Gruß
Werner



alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Unterstützung bei Dictionary (VB)1.387woerny15.05.14 06:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel