Excel-VBA - Wörterbuch - speichern und abrufen der Werte

Arbeite ich auf die unten stehende Tabelle mit Hilfe von Excel-VBA - Wörterbuch - ich bin versucht, alle details -
1) der Erste Schritt ist die Suche in "Ergebnisse" Spalte -, wenn der Wert "Nein" ist, dann müssen wir alle Lesen die Werte mit Ihren entsprechenden header.
2), So dass für den 2. Datensatz, d.h., Name = XYZ - wir speichern alle details. Auf der Grundlage der Nicht. der Themen-Spalte - wir speichern Wert aller verwendeten Themen und Ihre entsprechenden Markierungen - wird für die weitere Berechnung und generieren Sie die "Ergebnis" - Spalte.

Ich habe es teilweise funktioniert - wie ich in der Lage bin zu erfassen details - aber nicht in der Lage, speichern Sie alle details in allen den Gegenstand und über Ihre Zeichen:

Sr. No. Results Out?    Result  Name    Age No. of Subjects Subject Names   Marks
1           Yes          Pass   ABC      21       3          Maths           10
                                                             Science         26
                                                             History         34
2           No                  XYZ      10       2          Maths           24
                                                             Science         36

Unten ist der code, den ich verwendet habe, die teilweise funktioniert:

Public Sub test_dict()

Dim dict As New Scripting.dictionary
Set dict = New dictionary

sSheetIndex = 1
intTargetRow = 2

Set objUsedRange = Worksheets.Item(3).UsedRange

For Iter = 1 To objUsedRange.Columns.Count
   sCellName = objUsedRange.Cells(1, Iter)
   sCellValue = objUsedRange.Cells(intTargetRow, Iter)
   dict.Item(sCellName) = sCellValue

Next


For i = 0 To dict.Count - 1
    s = dict.Items()(i)
    Debug.Print dict.Keys()(i) & " " & dict.Items()(i)
    Debug.Print s
Next i

End Sub
  • Was ist Ihre Frage? Und warum brauchen Sie ein Wörterbuch? Es scheint, dass Sie möglicherweise alles, was Sie brauchen, mit nur arbeitsblattformeln.
  • Eigentlich bin ich mit dem Wörterbuch, wie es wird groß sein keine. der Datensätze (rund 14000) - und ich werde haben, diese zu verarbeiten und verwenden Sie es als Eingabe für andere Funktionen und es wird viel komplizierter, so mit Wörterbuch, anstatt Arbeitsblatt Formeln. Meine Frage ist, dass, wenn ich mit über Wörterbuch code, ich bin in der Lage, zum speichern von Schlüssel-Wert-Zuordnung für alle Felder, außer Subjekt und Marken-Zuordnung. Vielleicht habe ich eine andere verwenden-Wörterbuch speziell für die Themen und Marken, aber nicht wissen, wie korrelieren Sie mit 1. Wörterbuch.
  • So sind Sie über das dictionary-Objekt, weil das ist, was Sie brauchen, um passieren, um die anderen Funktionen, richtig? Wenn ja, dann schaut auf die anderen Funktionen zu sehen, wie die Themen/Marken-Daten übergeben werden.
  • Das Wörterbuch Items müssen nicht sein, string, Sie könnte ein variant-array oder einer collection zu halten, mehrere Artikel für jeden Schlüssel, Sie könnten sogar erstellen Sie eine benutzerdefinierte Datenstruktur (ein Objekt der Klasse) mit den benannten Eigenschaften/etc. statt einem Wörterbuch.
InformationsquelleAutor Krishna | 2013-11-14
Schreibe einen Kommentar