Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Listenzusammenstellung anhand von Schlüsselnummern

Gruppe

Liste

Problem

Gegeben ist eine Auflistung von Schlüsselnummern von Firmen, an die Faxe gesandt werden sollen. Die Firmendaten stehen im Blatt Faxnummer. In diesem Batt soll anhand der Schlüsselnummern der Verteiler ermittelt werden.

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: basMain

Sub FaxNummern()
   Dim wksAS As Worksheet, wksFax As Worksheet
   Dim varA As Variant, varB As Variant
   Set wksAS = Worksheets("AS400")
   Set wksFax = Worksheets("Faxnummern")
   Dim iRow As Integer, iRowL As Integer
   iRow = 2
   With wksAS
      Do Until IsEmpty(.Cells(iRow, 1))
         varA = Application.VLookup(.Cells(iRow, 1), _
            wksFax.Columns("A:C"), 3, 0)
         If Not IsError(varA) Then
            varB = Application.Match(varA, Columns("B"), 0)
            If IsError(varB) Then
               iRowL = Cells(Rows.Count, 1).End(xlUp).Row + 1
               Cells(iRowL, 1).Value = _
                  Application.VLookup(.Cells(iRow, 1), _
                     wksFax.Columns("A:C"), 2, 0)
               Cells(iRowL, 2).Value = varA
               Cells(iRowL, 3).Value = 1
            Else
               Cells(varB, 3).Value = Cells(varB, 3).Value + 1
            End If
         End If
         iRow = iRow + 1
      Loop
   End With
   Columns.AutoFit
End Sub