Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
06.05.2013 19:06:04 |
Oliver |
|
|
|
07.05.2013 13:41:39 |
Gast43639 |
|
|
|
07.05.2013 18:15:23 |
Gast87766 |
|
|
|
08.05.2013 19:32:58 |
Gast86147 |
|
|
|
08.05.2013 19:37:27 |
Gast96452 |
|
|
Transport-Matrix erstellen VBA |
08.05.2013 20:33:45 |
Gast82200 |
|
|
Von:
Gast82200 |
Datum:
08.05.2013 20:33:45 |
Views:
1799 |
Rating:
|
Antwort:
|
Thema:
Transport-Matrix erstellen VBA |
Hab jetzt mal so programmiert wie ich mirs dachte.
Sub test()
Dim dicX(1 To 2) As Scripting.Dictionary 'einzubinden über: VBA-Menü -> Extras -> Verweise -> 'Microsoft Scripting Runtime'
Dim rngData As Excel.Range
Dim rngResult As Excel.Range
Dim strFA As String
Dim i&, j&
With Tabelle1.UsedRange
Set rngData = .Resize(.Rows.Count - 1).Offset(1)
End With
For i = 1 To 2
'initialisieren
Set dicX(i) = CreateObject("Scripting.Dictionary")
'suche in Spalte nach Ausdruck 'X'
Set rngResult = rngData.Columns(i).Find("X", LookIn:=xlValues, LookAt:=xlWhole)
If Not rngResult Is Nothing Then
strFA = rngResult.Address
Do
If Not dicX(i).Exists(rngResult.Offset(ColumnOffset:=Choose(i, 1, -1)).Text) Then
'neuen Eintrag tätigen
dicX(i).Add rngResult.Offset(ColumnOffset:=Choose(i, 1, -1)).Text, 1
Else
'Eintrag bereits vorhanden... (ist was zu tun?)
End If
'suche nächsten Ausdruck in Spalte
Set rngResult = rngData.Columns(i).FindNext(rngResult)
Loop While rngResult.Address <> strFA
End If
Next i
'Ausgabe (vorerst nur) als Text
'(wenn 'Direktbereich'-Fenster nicht sichtbar: STRG + G)
For i = 0 To dicX(2).Count - 1
For j = 0 To dicX(1).Count - 1
Debug.Print dicX(2).Keys(j) & "/" & dicX(1).Keys(i)
Next
Next
Set rngResult = Nothing
Set rngData = Nothing
End Sub
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
06.05.2013 19:06:04 |
Oliver |
|
|
|
07.05.2013 13:41:39 |
Gast43639 |
|
|
|
07.05.2013 18:15:23 |
Gast87766 |
|
|
|
08.05.2013 19:32:58 |
Gast86147 |
|
|
|
08.05.2013 19:37:27 |
Gast96452 |
|
|
Transport-Matrix erstellen VBA |
08.05.2013 20:33:45 |
Gast82200 |
|
|