Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

"Makro-Umbau" wer weis Rat?

Forumthread: "Makro-Umbau" wer weis Rat?

"Makro-Umbau" wer weis Rat?
09.07.2003 13:12:49
Dominik
Hallo ich habe folgendes Makro:

Sub Konvertierung()
Dim iZeile As Long, iiZeile As Long
Dim strZelle As String
iiZeile = 0
For iZeile = 1 To Range("A65536").End(xlUp).Row
If Cells(iZeile, 1) <> "" Then
strZelle = Cells(iZeile, 1)
Do While InStr(strZelle, Chr(10)) > 0
iiZeile = iiZeile + 1
Cells(iiZeile, 3) = Left(strZelle, InStr(strZelle, Chr(10)) - 1)
Cells(iiZeile, 4) = Cells(iZeile, 2)
strZelle = Right(strZelle, Len(strZelle) - InStr(strZelle, Chr(10)))
Loop
iiZeile = iiZeile + 1
Cells(iiZeile, 3) = strZelle
Cells(iiZeile, 4) = Cells(iZeile, 2)
End If
Next iZeile
End Sub

Nun hätte ich gerne, dass der Text in Spalte C ebenfalss berücksichtigt wird und dass das Ergebnis der Konvertierung in Tabelle2(in Spalte B, C und D
und nicht wie bisher in Tablle1 in den Spalten C und D.
MfG
Dominik
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "Makro-Umbau" wer weis Rat?
09.07.2003 13:48:31
RAnton
Hallo Dominik,
habe es geändert.

Sub Konvertierung()
Dim iZeile As Long, iiZeile As Long
Dim strZelle As String
iiZeile = 0
For iZeile = 1 To Range("A65536").End(xlUp).Row
If Cells(iZeile, 1) <> "" And Cells(iZeile, 3) <> "" Then
strZelle = Cells(iZeile, 1)
Do While InStr(strZelle, Chr(10)) > 0
iiZeile = iiZeile + 1
Sheets("Tabelle2").Range(iiZeile, 2) = Left(strZelle, InStr(strZelle, Chr(10)) - 1)
Sheets("Tabelle2").Range(iiZeile, 3) = Cells(iZeile, 2)
Sheets("Tabelle2").Range(iiZeile, 4) = Cells(iZeile, 2)
strZelle = Right(strZelle, Len(strZelle) - InStr(strZelle, Chr(10)))
Loop
iiZeile = iiZeile + 1
Cells(iiZeile, 3) = strZelle
Cells(iiZeile, 4) = Cells(iZeile, 2)
End If
Next iZeile
End Sub

Die Schleife läuft nur, wenn
bei dieser Anweisung
Cells(iZeile, 1) <> "" And Cells(iZeile, 3) <> ""
beide Zellen <> "" sind.
Wenn dus anders haben willst, musst du OR nehmen.
Gruß
RAnton

Anzeige
AW: "Makro-Umbau" wer weis Rat?
09.07.2003 13:43:06
ChrisL
Hi Dominik
Ohne den Hintergrund zu kennen kann dir kaum jemand helfen. Der Link zum alten Beitrag oder eine kurze Erklärung wäre hilfreich gewesen.
Option Explicit

Sub Konvertierung()
Dim iZeile As Long, iiZeile As Long
Dim strZelle As String
Dim WS1 As Worksheet, WS2 As Worksheet
iiZeile = 0
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
For iZeile = 1 To WS1.Range("A65536").End(xlUp).Row
If WS1.Cells(iZeile, 1) <> "" Then
strZelle = WS1.Cells(iZeile, 1)
Do While InStr(strZelle, Chr(10)) > 0
iiZeile = iiZeile + 1
WS2.Cells(iiZeile, 2) = Left(strZelle, InStr(strZelle, Chr(10)) - 1)
WS2.Cells(iiZeile, 3) = WS1.Cells(iZeile, 2)
WS2.Cells(iiZeile, 4) = WS1.Cells(iZeile, 3)
strZelle = Right(strZelle, Len(strZelle) - InStr(strZelle, Chr(10)))
Loop
iiZeile = iiZeile + 1
WS2.Cells(iiZeile, 2) = strZelle
WS2.Cells(iiZeile, 3) = WS1.Cells(iZeile, 2)
WS2.Cells(iiZeile, 4) = WS1.Cells(iZeile, 3)
End If
Next iZeile
End Sub

Gruss
Chris

Anzeige
AW: Respekt! ;-)
09.07.2003 13:50:46
Dominik
Vielen Dank Chris!
"Ohne den Hintergrund zu kennen" hast Du einen Volltreffer gelandet! Vielen Dank!
Ich werde mich das nächste Mal bemühen, euch eine genauere Darstellung des Problems zu liefern.
MfG
Dominik

AW: Respekt! ;-)
09.07.2003 14:27:00
ChrisL
Bitte...
Ich habe den Hintergrund schon gekannt, denn das Makro stammte von mir. Aber wie das RAnton geschafft hat ist mir ein Rätsel ;-)
cu
Chris

Anzeige
@Chis -> Kristallkugel
09.07.2003 15:40:20
RAnton
fg

;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige