Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
440to444
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
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zweizeilige Datensätze verarbeiten

Zweizeilige Datensätze verarbeiten
18.06.2004 10:14:11
Alina
Hallo zusammen!
Ich arbeite mit UNIX und Windows. Für mich gibt es die Aufgabe, die unter UNIX erstellten Statistiken, die ich dort nicht weiter ver- oder bearbeiten kann, in Excel auszuwerten.
Der Export der Daten ins Windows als dbf-Datei und das Öffnen und Konvertieren der Daten in Excel funktioniert wunderbar: die Daten werden hier wie dort exakt gleich dargestellt. Nur gibt es ein Problem: ein Datensatz besteht aus zwei Zeilen, was sich auch nicht ändern lässt. Wie kann man die Zeilen "paaren", für Excel so deklarieren, daß man mit ihnen wie mit einer Zeile arbeiten kann, was für mich sehr wichtig wäre, um sie z.B. sortieren zu können?
Wünschenswert wäre eine automatische Zusammenfassung, da es sich hier um sehr viele Datensätze handelt.
Vielen Dank

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zweizeilige Datensätze verarbeiten
Heiko
Hallo Alina,
sind die Zeilenpaare identisch oder handelt es sich um 1 Zeile, die durch Zeilenumruch
umgebrochen wurde? Wenn nicht würde ich im (für mich) einfachsten Fall folgendes machen.
Die Daten zuerst aufsteigend nach z.B. Datum sortieren. Somit sollten das gleiche
Datum immer 2x untereinander stehen. Dann links 1 leere Spalte einfügen.
Anschliessend nimm die Formel =ZÄHLENWENN($B$1:B1;B1), und trage sie in Spalte
A ein. Den 1. Teil der Bezugsangabe vor dem : musst Du in $ setzen und alle anderen
ohne $ einsetzen. Somit bleibt die Formel nach unten flexibel.
Das Resultat sollte so aussehen. (WICHTIG: die Daten müssen aufsteigend sortiert sein)
A|B| -- Spalten
-+--------+-
1|01.06.04
1|02.06.04
2|02.06.04
1|03.06.04
2|03.06.04
3|03.06.04
1|04.06.04
2|04.06.04
1|05.06.04
2|05.06.04
1|18.06.04
Nu kannst Du Filtern nach der Anzahl (Spalte A) und die doppelten Zeilen löschen, wenn sie
sowieso identisch sin.
Übrigens beim X,Y Diagramm werden gleiche Datensätze auf einem Punkt dargestellt.
Viel Erfolg, Heiko
Anzeige
AW: Zweizeilige Datensätze verarbeiten
18.06.2004 12:18:22
Alina
Hi Heiko!
Vielen lieben Dank für Deine Mühe, aber so einfach ist es leider nicht: es handelt sich jeweils um eine, lange Zeile, die im UNIX auf zwei umgebrochen worden ist, es gibt keine Merkmale, die für Excel eindeutig wären, daß sie zusammengehören, außer den Umstand, daß immer zwei zusammengehörende Zeilen (es handelt sich um Produktbezeichnungen und Artikelnrn. eines Artikels)direkt untereinanderstehen.
Danke nochmal
LG Alina
AW: Zweizeilige Datensätze verarbeiten
Heiko
Hi Alina,
Dann müßte doch ein CR oder LF Zeichen in jedem Datensatz vorhanden sein, oder ?
Gruss Heiko
AW: Zweizeilige Datensätze verarbeiten
18.06.2004 13:05:07
Alina
Hi Heiko!
Nein, Unix gibt diese Datensätze zweizeilig ohne Steuerzeichen aus; nach folgendem Muster:
Artikelnr |EAN |Artikelbezeichnung|.....|Bestand STCK.|
Lagerplatz|Industrie-Art.-Nr.|Warengruppe |.....|Bestand € |
(Darunter folgen nach dem gleichen Muster die Daten)
12345 |4001234564561 |Schraube |.....|15 |
1234500 |HD764 |457 |.....|56.15 |
LG
Alina
Anzeige
AW: Zweizeilige Datensätze verarbeiten
Heiko
Wäre es für Dich hilfreich, wenn die Daten in einer Zeile stehen würden?
Gruß Heiko
AW: Zweizeilige Datensätze verarbeiten
18.06.2004 13:49:05
Alina
Hi Heiko!
Das wäre schön, wichtig ist eben,daß ich die Daten später ohne Probs weiterbearbeiten, sortieren u.. lassen kann. Wenn ich es jetzt täte,würden die einzelnen, zusammengehörenden Zeilen während des Sortierens ja auseinandergerissen werden.
Liebe Grüsse
Alina
AW: Zweizeilige Datensätze verarbeiten
Heiko
Hi Alina,
ich denk mal drüber nach. Melde mich Montag wieder.
Schönes WE
LG Heiko
AW: Zweizeilige Datensätze verarbeiten
18.06.2004 14:10:15
Alina
Hi Heiko!
ich danke Dir jetzt schon, sorry für das versaute WE *fg.
LG
Alina
AW: Zweizeilige Datensätze verarbeiten
Heiko
Ich setze voraus, dass die Quelldaten Komma- (oder durch ein anderes Zeichen) getrennt zur
Verfügung stehen. Ich habe die nachfolgenden Daten mal so in EXCEL auf Tabelle1 eingegeben.
Also
Spalte A: - Datensatznummer (immer 2 Zeilen)
Spalte B: - 1. und 2. Teil jedes Datensatzes
Spalte C: - hier sind Dummybeschriftungen für Datensatz
Spalte D: - hier sind Dummybeschriftungen für Zeile des Datensatzes
Quelldaten aus UNIX:
--------------------
Spalte_A,Spalte_B,Spalte_C,Spalte_D
1, 1, Datensatz_1, Zeile_1
1, 2, Datensatz_1, Zeile_2
2, 1, Datensatz_2, Zeile_1
2, 2, Datensatz_2, Zeile_2
3, 1, Datensatz_3, Zeile_1
3, 2, Datensatz_3, Zeile_2
4, 1, Datensatz_4, Zeile_1
4, 2, Datensatz_4, Zeile_2
5, 1, Datensatz_5, Zeile_1
5, 2, Datensatz_5, Zeile_2
6, 1, Datensatz_6, Zeile_1
6, 2, Datensatz_6, Zeile_2
7, 1, Datensatz_7, Zeile_1
7, 2, Datensatz_7, Zeile_2
8, 1, Datensatz_8, Zeile_1
8, 2, Datensatz_8, Zeile_2
9, 1, Datensatz_9, Zeile_1
9, 2, Datensatz_9, Zeile_2
10, 1, Datensatz_10, Zeile_1
10, 2, Datensatz_10, Zeile_2
11, 1, Datensatz_11, Zeile_1
11, 2, Datensatz_11, Zeile_2
12, 1, Datensatz_12, Zeile_1
12, 2, Datensatz_12, Zeile_2
13, 1, Datensatz_13, Zeile_1
13, 2, Datensatz_13, Zeile_2
14, 1, Datensatz_14, Zeile_1
14, 2, Datensatz_14, Zeile_2
15, 1, Datensatz_15, Zeile_1
15, 2, Datensatz_15, Zeile_2
16, 1, Datensatz_16, Zeile_1
16, 2, Datensatz_16, Zeile_2
17, 1, Datensatz_17, Zeile_1
17, 2, Datensatz_17, Zeile_2
18, 1, Datensatz_18, Zeile_1
18, 2, Datensatz_18, Zeile_2
19, 1, Datensatz_19, Zeile_1
19, 2, Datensatz_19, Zeile_2
20, 1, Datensatz_20, Zeile_1
20, 2, Datensatz_20, Zeile_2
Dann habe ich diesen VBA - Code in ein Modul eingegeben
VBA-Code:
---------

Sub verketten()
Dim ZQ As Integer  'Zeilenvariable Quelldaten
Dim ZZ As Integer  'Zeilenvariable Zieldaten
Set p1 = ActiveWorkbook.Worksheets("Tabelle1")
Set p2 = ActiveWorkbook.Worksheets("Tabelle2")
'ZZ und ZQ in der FOR-Schleife ggf. anpassen
ZZ = 1
For ZQ = 1 To 21 Step 2  ' jede 2. Quellzeile auslesen
p2.Cells(ZZ, 1).Formula = _
p1.Cells(ZQ, 3).Text & "+" & _
p1.Cells(ZQ, 4).Text & "+" & _
p1.Cells(ZQ + 1, 3).Text & "+" & _
p1.Cells(ZQ + 1, 4).Text
ZZ = ZZ + 1            'Zieltabelle jede Zeile schreiben
Next
End Sub

Das Ergebnis steht auf dem 2. Tabellenblatt
-------------------------------------------
Datensatz_1+Zeile_1+Datensatz_1+Zeile_2
Datensatz_2+Zeile_1+Datensatz_2+Zeile_2
Datensatz_3+Zeile_1+Datensatz_3+Zeile_2
Datensatz_4+Zeile_1+Datensatz_4+Zeile_2
Datensatz_5+Zeile_1+Datensatz_5+Zeile_2
Datensatz_6+Zeile_1+Datensatz_6+Zeile_2
Datensatz_7+Zeile_1+Datensatz_7+Zeile_2
Datensatz_8+Zeile_1+Datensatz_8+Zeile_2
Datensatz_9+Zeile_1+Datensatz_9+Zeile_2
Datensatz_10+Zeile_1+Datensatz_10+Zeile_2
Datensatz_11+Zeile_1+Datensatz_11+Zeile_2
Viel Erfolg. Ich hoffe, Du kannst das Problem damit erschlagen
Gruß Heiko
Anzeige
AW: Zweizeilige Datensätze verarbeiten
22.06.2004 17:08:53
Alina
Hi Heiko!
Vielen lieben Dank für Deine Mühe, das Ergebnis ist genau so, wie ich es erwarten würde. Nur wie muss ich die Variablen anpassen, damit das Ding bei mir läuft, bin absolute VBA-Laiin (was muss ich für ZQ und ZZ einsetzen?).
Tschaui
Alina
AW: Zweizeilige Datensätze verarbeiten
Heiko
Hi Alina,
hier zu Beginn nochmal der VBA - Code
'$$---------------------------------------------------------$$

Sub verketten()
Dim ZQ As Integer  'Zeilenvariable Quelldaten
Dim ZZ As Integer  'Zeilenvariable Zieldaten
Set p1 = ActiveWorkbook.Worksheets("Tabelle1")
Set p2 = ActiveWorkbook.Worksheets("Tabelle2")
'ZZ und ZQ in der FOR-Schleife ggf. anpassen
ZZ = 1
For ZQ = 1 To 21 Step 2  ' jede 2. Quellzeile auslesen
p2.Cells(ZZ, 1).Formula = _          ' die Zuweisung geht auf Tabellenblat "Tabelle2" ..siehe p2.
p1.Cells(ZQ, 1).Text & "+" & _       ' HIER DIE 1. ZEILE  1. SPALTE DES AKTUELLEN DATENSATZES DAZUHOLEN
p1.Cells(ZQ, 2).Text & "+" & _       ' HIER DIE 1. ZEILE  2. SPALTE DES AKTUELLEN DATENSATZES DAZUHOLEN
p1.Cells(ZQ + 1, 1).Text & "+" & _   ' HIER DIE 2. ZEILE 1. SPALTE NACH DER AKTUELLEN DATENSATZES DAZUHOLEN.
p1.Cells(ZQ + 1, 2).Text             ' HIER DIE 2. ZEILE 2. SPALTE NACH DER AKTUELLEN DATENSATZES DAZUHOLEN.
ZZ = ZZ + 1                          ' Zieltabelle jede Zeile schreiben, deshalb +1
Next
End Sub

'$$---------------------------------------------------------$$
Also, ich kann leider nicht so gut erklären, aber ich versuche es hier mal.
ICH SETZE ALSO NOCH EINMAL VORRAUS, DASS WIRKLICH IN JEDER 2. ZEILE DER
NEUE DATENSATZ BEGINNT.
Ich habe in meinem Beispiel die Daten beginnend in der 1. Zeile eines
Exceltabellenblattes vorausgesetzt.
ZQ (=ZeileQuelldaten) ist die Start-Zählvariable ab der Zeile, wo die Daten beginnen.
(da ich die Daten gleich in Zeile 1 beginnend eingegeben hatte, also 1,
würden die Daten erst in Zeile 15 beginnen, dann müßte ZQ den Wert 15 zugewiesen bekommen)
Diese wird in 2er - Schritten (Step 2) hochgezählt, weil
Du ja die Datensätze immer in 2 Zeilen vorliegen hast.
Somit musst Du in jedem Schleifendurchgang beim Auslesen der Datensätze
auf jede 2. Zeile (also immer die übernächste) zurückgreifen.
ZZ (=ZeileZieldaten) ist die Start-Zählvariable ab der Zeile, wo die Datenausgabe
beginnen soll (auf Tabellenblatt2). Hier gilt auch wieder 1 entspricht der 1. Zeile auf
dem Tabellenblatt. Diese wird nur um 1 hochgezählt, somit wird die Ausgabe
Zeile für Zeile ausgegeben (auf Tabellenblatt2).
To 21 (=Zählendwert der For-Schleife) Diesen musst Du nach der Menge Deiner Datensätze anpassen.
Bei 50 Datensätzen müßtest Du 100 eintragen, wenn immer 2 Zeilen dazugehören.
Ich hätte bis 40 Zählen sollen, da ich in meinem Beispie ja 40 Zeilen angegeben hatte.
Soweit zu den Variablen ZQ und ZZ.
& "+" ist ein Verkettungsoperator, mit dm Du 2 Texte zusammenhängst. Das + - Zeichen
in den Hochkommas kannst Du auch durch ein (oder mehrere Leerzeichen etc.) ersetzen.
'$$---------------------------------------------------------$$
Noch ein paar Anmerkungen zu: p1, p2, Cellls(...)
p1 ist eine Objektvariable und hat im einfachsten Fall die Zeichenfolge
"ActiveWorkbook.Worksheets("Tabelle1")" zugewiesen bekommen
p2 ist eine Objektvariable und hat im einfachsten Fall die Zeichenfolge
"ActiveWorkbook.Worksheets("Tabelle2")" zugewiesen bekommen
Dies erspart jede Menge Schreibaufwand.
Anstatt "ActiveWorkbook.Worksheets("Tabelle1")" zugewiesen bekommen schreibst Du nur noch "p1"
Cells(...) adressiert die Zelladresse auf Tabellenblatt (p1 oder p2).
Cells bekommt 2 Parameter, wobei der 1. der Zeilennummer entspricht und der 2. der Spaltennummer.
also z. B. Cells(Z,S)
z. B. Cells(1,1) adressiert die Zelle "A1"
z. B. Cells(1,2) adressiert die Zelle "B1"
z. B. Cells(3,3) adressiert die Zelle "C3"
z. B. Cells(5,1) adressiert die Zelle "E1"
Durch ZQ bze ZZ werden Variablen eingesetzt, die in jedem Schleifendurchlauf geändert an Cells(..)
übergeben werden und somit bei jedem Durchgang auf die übernächste Zeile zugegriffen wird.
"p1.Cells(ZQ, 1).Text" liest also den Wert aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 1
"p1.Cells(ZQ, 2).Text" liest also den Wert aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 2
"p2.Cells(ZZ, 1).Formula = p1.Cells(ZQ, 1).Text"
weist der Zelle in Zeile(ZZ-Variablenwert) und Spalte 1 auf Tabellenblatt 2 den Wert
aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 1 des Tabellenblatte 1 zu
Vielleicht hilft Dir dass hier ein Stück weiter.
Viele Grüße, Heiko
Anzeige
AW: Zweizeilige Datensätze verarbeiten
Heiko
Hi Alina,
hier zu Beginn nochmal der VBA - Code
'$$---------------------------------------------------------$$

Sub verketten()
Dim ZQ As Integer  'Zeilenvariable Quelldaten
Dim ZZ As Integer  'Zeilenvariable Zieldaten
Set p1 = ActiveWorkbook.Worksheets("Tabelle1")
Set p2 = ActiveWorkbook.Worksheets("Tabelle2")
'ZZ und ZQ in der FOR-Schleife ggf. anpassen
ZZ = 1
For ZQ = 1 To 21 Step 2  ' jede 2. Quellzeile auslesen
p2.Cells(ZZ, 1).Formula = _          ' die Zuweisung geht auf Tabellenblat "Tabelle2" ..siehe p2.
p1.Cells(ZQ, 1).Text & "+" & _       ' HIER DIE 1. ZEILE  1. SPALTE DES AKTUELLEN DATENSATZES DAZUHOLEN
p1.Cells(ZQ, 2).Text & "+" & _       ' HIER DIE 1. ZEILE  2. SPALTE DES AKTUELLEN DATENSATZES DAZUHOLEN
p1.Cells(ZQ + 1, 1).Text & "+" & _   ' HIER DIE 2. ZEILE 1. SPALTE NACH DER AKTUELLEN DATENSATZES DAZUHOLEN.
p1.Cells(ZQ + 1, 2).Text             ' HIER DIE 2. ZEILE 2. SPALTE NACH DER AKTUELLEN DATENSATZES DAZUHOLEN.
ZZ = ZZ + 1                          ' Zieltabelle jede Zeile schreiben, deshalb +1
Next
End Sub

'$$---------------------------------------------------------$$
Also, ich kann leider nicht so gut erklären, aber ich versuche es hier mal.
ICH SETZE ALSO NOCH EINMAL VORRAUS, DASS WIRKLICH IN JEDER 2. ZEILE DER
NEUE DATENSATZ BEGINNT.
Ich habe in meinem Beispiel die Daten beginnend in der 1. Zeile eines
Exceltabellenblattes vorausgesetzt.
ZQ (=ZeileQuelldaten) ist die Start-Zählvariable ab der Zeile, wo die Daten beginnen.
(da ich die Daten gleich in Zeile 1 beginnend eingegeben hatte, also 1,
würden die Daten erst in Zeile 15 beginnen, dann müßte ZQ den Wert 15 zugewiesen bekommen)
Diese wird in 2er - Schritten (Step 2) hochgezählt, weil
Du ja die Datensätze immer in 2 Zeilen vorliegen hast.
Somit musst Du in jedem Schleifendurchgang beim Auslesen der Datensätze
auf jede 2. Zeile (also immer die übernächste) zurückgreifen.
ZZ (=ZeileZieldaten) ist die Start-Zählvariable ab der Zeile, wo die Datenausgabe
beginnen soll (auf Tabellenblatt2). Hier gilt auch wieder 1 entspricht der 1. Zeile auf
dem Tabellenblatt. Diese wird nur um 1 hochgezählt, somit wird die Ausgabe
Zeile für Zeile ausgegeben (auf Tabellenblatt2).
To 21 (=Zählendwert der For-Schleife) Diesen musst Du nach der Menge Deiner Datensätze anpassen.
Bei 50 Datensätzen müßtest Du 100 eintragen, wenn immer 2 Zeilen dazugehören.
Ich hätte bis 40 Zählen sollen, da ich in meinem Beispie ja 40 Zeilen angegeben hatte.
Soweit zu den Variablen ZQ und ZZ.
& "+" ist ein Verkettungsoperator, mit dm Du 2 Texte zusammenhängst. Das + - Zeichen
in den Hochkommas kannst Du auch durch ein (oder mehrere Leerzeichen etc.) ersetzen.
'$$---------------------------------------------------------$$
Noch ein paar Anmerkungen zu: p1, p2, Cellls(...)
p1 ist eine Objektvariable und hat im einfachsten Fall die Zeichenfolge
"ActiveWorkbook.Worksheets("Tabelle1")" zugewiesen bekommen
p2 ist eine Objektvariable und hat im einfachsten Fall die Zeichenfolge
"ActiveWorkbook.Worksheets("Tabelle2")" zugewiesen bekommen
Dies erspart jede Menge Schreibaufwand.
Anstatt "ActiveWorkbook.Worksheets("Tabelle1")" zugewiesen bekommen schreibst Du nur noch "p1"
Cells(...) adressiert die Zelladresse auf Tabellenblatt (p1 oder p2).
Cells bekommt 2 Parameter, wobei der 1. der Zeilennummer entspricht und der 2. der Spaltennummer.
also z. B. Cells(Z,S)
z. B. Cells(1,1) adressiert die Zelle "A1"
z. B. Cells(1,2) adressiert die Zelle "B1"
z. B. Cells(3,3) adressiert die Zelle "C3"
z. B. Cells(5,1) adressiert die Zelle "E1"
Durch ZQ bze ZZ werden Variablen eingesetzt, die in jedem Schleifendurchlauf geändert an Cells(..)
übergeben werden und somit bei jedem Durchgang auf die übernächste Zeile zugegriffen wird.
"p1.Cells(ZQ, 1).Text" liest also den Wert aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 1
"p1.Cells(ZQ, 2).Text" liest also den Wert aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 2
"p2.Cells(ZZ, 1).Formula = p1.Cells(ZQ, 1).Text"
weist der Zelle in Zeile(ZZ-Variablenwert) und Spalte 1 auf Tabellenblatt 2 den Wert
aus der Zelle in Zeile(ZQ-Variablenwert) und Spalte 1 des Tabellenblatte 1 zu
Vielleicht hilft Dir dass hier ein Stück weiter.
Viele Grüße, Heiko
Anzeige
AW: Zweizeilige Datensätze verarbeiten
23.06.2004 17:05:36
Alina
Hi Heiko!
Ich weiß gar nicht, wie ich Dir für Deine Mühe danken soll. Allerdings bekomme ich nur diverse Fehlermeldungen vom VBA-Editor, wenn ich über "Debuggen" "Einzelschritt" Deinen Code teste. Wenn ich ihn original übernehme und den Teil in der FOR-Schleife auf den relevanten Zeilenbeginn (bei mir 4) und das Zeilenende (381) ändere, wird mir ein Fehler beim Kompilieren:Syntaxfehler" gemeldet und die Prüfung bleibt vor dem ersten Kommentar bei p2.Cells(ZZ, 1).Formula = _ ' die Zuweisung geht auf Tabellenblat "Tabelle2" ..siehe p2. vor dem Apostroph hängen.
Mit an Sicherheit grenzender Wahrscheinlichkeit bin ich wahrscheinlich ( in doppelter hinsicht) nur zu dämlich, daß richtig zu handeln.
Also: !) Ich öffne die dbf-Datei
2) "Text in Spalten" (Übernahme der relevanten Daten, die durch Leerschritte getrennt sind)
3)Rohdaten liegen vor (zusammengehörende zweizeilige Datensätze)
4)Das Tabellenblatt heisst bei mir "Druck" (--Umlenkung der UNIX-Druckdaten in eine Datei)
5)Formatierung der Daten, Entfernung überflüssiger Leerzeilen, die Seite für Seite von UNIX angelegt worden waren, Optimierung Spaltenbreite etc.
6)Die Tabelle ist fertig
7)Menü "Extras", VBA-Editor
8)Menü "Einfügen" "Modul"
9)Code einfügen, anpassen...(Zeilenanfang, -ende)
10)Geht nicht! *Stöhn
Was mache ich falsch?
Trau-mich-gerade-zu-fragen-Blick
LG Alina
Anzeige
Es hat geschnackelt!!!
23.06.2004 18:35:08
Alina
Hi Heiko!
Jetzt hats gefunkt, ich habe den Code auf meine Bedürfnisse angepasst:
Zeile 1 (A bis M, also 13 Spalten)
Zeile 2 (A bis L, also 12 Spalten)

Sub verketten()
Dim ZQ As Integer  'Zeilenvariable Quelldaten
Dim ZZ As Integer  'Zeilenvariable Zieldaten
Set p1 = ActiveWorkbook.Worksheets("Tabelle1")
Set p2 = ActiveWorkbook.Worksheets("Tabelle2")
'ZZ und ZQ in der FOR-Schleife ggf. anpassen
ZZ = 1
For ZQ = 1 To 377 Step 2  ' jede 2. Quellzeile auslesen
p2.Cells(ZZ, 1).Formula = _
p1.Cells(ZQ, 1).Text
p2.Cells(ZZ, 2).Formula = _
p1.Cells(ZQ, 2).Text
p2.Cells(ZZ, 3).Formula = _
p1.Cells(ZQ, 3).Text
p2.Cells(ZZ, 4).Formula = _
p1.Cells(ZQ, 4).Text
p2.Cells(ZZ, 5).Formula = _
p1.Cells(ZQ, 5).Text
p2.Cells(ZZ, 6).Formula = _
p1.Cells(ZQ, 6).Text
p2.Cells(ZZ, 7).Formula = _
p1.Cells(ZQ, 7).Text
p2.Cells(ZZ, 8).Formula = _
p1.Cells(ZQ, 8).Text
p2.Cells(ZZ, 9).Formula = _
p1.Cells(ZQ, 9).Text
p2.Cells(ZZ, 10).Formula = _
p1.Cells(ZQ, 10).Text
p2.Cells(ZZ, 11).Formula = _
p1.Cells(ZQ, 11).Text
p2.Cells(ZZ, 12).Formula = _
p1.Cells(ZQ, 12).Text
p2.Cells(ZZ, 13).Formula = _
p1.Cells(ZQ, 13).Text
p2.Cells(ZZ, 14).Formula = _
p1.Cells(ZQ + 1, 1).Text
p2.Cells(ZZ, 15).Formula = _
p1.Cells(ZQ + 1, 2).Text
p2.Cells(ZZ, 16).Formula = _
p1.Cells(ZQ + 1, 3).Text
p2.Cells(ZZ, 17).Formula = _
p1.Cells(ZQ + 1, 4).Text
p2.Cells(ZZ, 18).Formula = _
p1.Cells(ZQ + 1, 5).Text
p2.Cells(ZZ, 19).Formula = _
p1.Cells(ZQ + 1, 6).Text
p2.Cells(ZZ, 20).Formula = _
p1.Cells(ZQ + 1, 7).Text
p2.Cells(ZZ, 21).Formula = _
p1.Cells(ZQ + 1, 8).Text
p2.Cells(ZZ, 22).Formula = _
p1.Cells(ZQ + 1, 9).Text
p2.Cells(ZZ, 23).Formula = _
p1.Cells(ZQ + 1, 10).Text
p2.Cells(ZZ, 24).Formula = _
p1.Cells(ZQ + 1, 11).Text
p2.Cells(ZZ, 25).Formula = _
p1.Cells(ZQ + 1, 12).Text
ZZ = ZZ + 1            'Zieltabelle jede Zeile schreiben
Next
End Sub

Das wars also; Du hast mir sehr weitergeholfen, werde oft an Dich denken *g.
Vielen Dank
Alina
Anzeige
AW: Es hat geschnackelt!!!
Heiko
Hallo Alina,
Danke für Deine Nachricht und die gute Zusammenarbeit.
Hat mich gefreut.
LG von Heiko
AW: Es hat geschnackelt!!!
Heiko
Hallo Alina,
noch ein Tipp. Du kannst den Code, wegen der Übersichtlichkeit, auch in 1 Zeile schreiben.
p2.Cells(ZZ, 1).Formula = _
p1.Cells(ZQ, 1).Text
entspricht:
p2.Cells(ZZ, 1).Formula = p1.Cells(ZQ, 1).Text
Nach dem Gleicheitszeichen "ein" Leerzeichen und anschliessend "einen" Unterstrich -
damit bricht man den Code um auf die nächste Zeile(im VBA-Editor).
Mit dem Einsatz des "&" - Zeichens kanst Du sogar innerhalb von Text umbrechen.
Ansonsten, falls Du noch mal Zeit für eine Frage oder ein Feedback zum Thema hast, schreibs hier noch dazu.
Weiterhin VIEL ERFOLG
LG von Heiko
Anzeige
AW: Es hat geschnackelt!!!
25.06.2004 11:21:41
Alina
Hi Heiko!
Danke Dir für den Tip; hatte mir sowas schon gedacht, nur bisher keine Zeit gehabt, welche Zeichen gelöscht werden müssen, damit VB das als eine zujsammengehörende Code-Zeile versteht;das ist bei großen Makros - denk ich - Pflicht, damit man den Überblick nicht verliert.
Schönes We
Alina

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige