Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1404to1408
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
Inhaltsverzeichnis

VBA Auswertung

VBA Auswertung
06.02.2015 10:40:10
Stefan
Hallo Leute,
ich habe wenig bis gar keine Ahnung von Makros, daher wende ich mich an euch, dass ihr mir vielleicht helfen könnt.
Also ich habe eine Excel Tabelle mit drei Spalten. In der ersten Spalte ist in den einzelnen Zellen immer nur ein Wort. In der zweiten Spalte sind in den einzelnen Zellen mehrere Wörter, die mit einem Komma getrennt sind, das gleiche gilt auch für die dritte Spalte.
Ich möchte jetzt, dass die Makro es schafft, dass alle möglichen Kombinationen pro Zeile angezeigt werden.
Ich hoffe, ihr könnt mir helfen.
VG
Stefan

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Auswertung
06.02.2015 10:48:45
Jack_d
Hallo Stefan.
eine Mustermappe wär toll.
In dem Fall besonder wichtig wie du dir die ausgabe vorstellst.
Grüße

AW: VBA Auswertung
06.02.2015 11:05:16
Stefan
Hi Jack,
vielen Dank, dass du mir helgen willst. Anbei ist ein Beispiel, wie die Excel file aussieht und wie ich es mir vorstelle.
https://www.herber.de/bbs/user/95601.xlsx
VG
Stefan

Mal ein Ansatz
06.02.2015 11:55:36
Jack_d
Moinsen,
also der Versuch sieht ganz gut aus =)
Grüße
Sub vari()
Dim LZeile As Long
Dim EZeile As Integer
Dim EintragZeile As Long
Dim Eintrag As Long
Dim SA As Long
Dim SB As Long
Dim SBU As Integer
Dim SC As Long
Dim SCU As Integer
Dim SpalteA As String
Dim SpalteB() As String
Dim SpalteC() As String
Dim SpalteAMenge As Integer
Dim SpalteBMenge As Integer
Dim SpalteCMenge As Integer
Dim GesamtMenge As Integer
'' Löschen
Worksheets("Tabelle2").Cells.ClearContents
With Worksheets("Tabelle1")
EZeile = 3
LZeile = 4
For i = EZeile To LZeile
'' Auslesen
SpalteA = .Cells(i, 1)
SpalteAMenge = 1
SpalteB = Split(.Cells(i, 2), ",")
SpalteBMenge = UBound(SpalteB) + 1
SpalteC = Split(.Cells(i, 3), ",")
SpalteCMenge = UBound(SpalteC) + 1
GesamtMenge = SpalteAMenge * SpalteBMenge * SpalteCMenge
'' Eintragen
With Worksheets("Tabelle2")
'Spalte A
EintragZeile = .Cells(Rows.Count, 1).End(xlUp).Row + 1
For SA = EintragZeile To GesamtMenge + 1
.Cells(SA, 1) = SpalteA
Next SA
'Spalte B
EintragZeile = .Cells(Rows.Count, 2).End(xlUp).Row + 1
Eintrag = EintragZeile
For SBU = 0 To UBound(SpalteB)
For SB = EintragZeile To SpalteCMenge + 1
.Cells(Eintrag, 2) = SpalteB(SBU)
Eintrag = Eintrag + 1
Next SB
Next SBU
'Spalte C
EintragZeile = .Cells(Rows.Count, 3).End(xlUp).Row + 1
Eintrag = EintragZeile
For SC = EintragZeile To SpalteBMenge + 1
For SCU = 0 To UBound(SpalteC)
.Cells(Eintrag, 3) = SpalteC(SCU)
Eintrag = Eintrag + 1
Next SCU
Next SC
End With
Next i
End With
End Sub

Anzeige
AW: Mal ein Ansatz
06.02.2015 12:47:46
Stefan
Hi,
ja es funktioniert ganz ausgezeichnet. Vielen Dank.
VG
Stefan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige