Herbers Excel-Forum - das Archiv

Makro Zelleninhalte kopieren und einfügen

Bild

Betrifft: Makro Zelleninhalte kopieren und einfügen
von: KGB

Geschrieben am: 28.07.2008 13:31:16

Hallo
ich habe rund 70 Seiten mit Messwerten eingescannt, als *.doc / *.rtf gespeichert und anschließend in Excel kopiert. Hat soweit alles funktioniert ... Aber ... Werte, die noch 2 Stellen hinter dem Komma haben(hier ist es ein Punkt), werden in zwei Spalten nebeneinander dargestellt.
Mein Makro "Kopiere den Wert aus B5 hinter den Wert in A5, aus B6 in A6 (u.s.w)" hat soweit funktioniert - aber nur für diese eine Seite, da er die exakten Werte aus den Zellen in das Makro übernommen hat. M. E. müsste er nicht den exakten Wert, sondern den Inhalt kopieren bzw. ausschneiden, so dass alle 70 Seiten mit diesem einen Makro funktionieren.
Da aus diesen Werten ein Diagramm gemacht werden soll, brauchte ich auch noch ein Makro, welches die Werte von "untereinander" nach "nebeneinander" stellt.
Für Eure Hilfe danke ich Euch schon jetzt.
Lieben Gruß
KGB

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: Holger

Geschrieben am: 28.07.2008 14:43:54
Hallo KGB,
wahrscheinlich musst du das Makro an deine Bedürfnisse noch etwas anpassen

Sub ws_aufl()
For Each ws In Worksheets 'durchsucht alle Tabellenblätter
ws.Activate
a = Range(Cells(Rows.Count, 1), Cells(Rows.Count, 1)).End(xlUp).Row 'letzte gefülle Zelle  _
in Spalte A
For i = 1 To a
If Cells(i, 2) <> "" Then Cells(i, 1) = Cells(i, 1) + Cells(i, 2) 'ggf. noch ein + ","  _
einfügen
Cells(i, 2) = ""
Next i
Range("A2:A" + CStr(a)).Copy '3 Befehle zum Transponieren der Spalte A (A1 braucht nicht!)
Range("B1").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= False,  _
Transpose:=True
Range("A2:A" + CStr(a)).Delete
Next
End Sub


Gruß
Holger

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: KGB

Geschrieben am: 28.07.2008 15:30:55
Hallo Holger,
das ging ja super schnell.
Beim Probelauf kommt die Meldung Laufzeitfehler '13': Typenunverträglichkeit.
Leider habe ich das mit dem anpassen, bzw. mit 'ggf. noch ein + "," _ einfügen nicht verstanden.
Vielleicht könntest Du noch einmal...
Vielen Dank im Voraus.
Gruß
KGB

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: Holger

Geschrieben am: 28.07.2008 17:45:07
Hallo KGB,
ich weiß nicht, ob ib Spalte B die Werte mit einem Punkt oder Komma beginnen oder nur eine ganze Zahl sind. Wenn sie eine ganze Zahl sind, musst du das Komma wieder einfügen:
If Cells(i, 2) <> "" Then Cells(i, 1) = Cells(i, 1) + ","+ Cells(i, 2)
Ich vermute, der Laufzeitfehler auch in dieser Zeile entsteht. erste sie daher durch
If Cells(i, 2) <> "" Then Cells(i, 1) = CStr(Cells(i, 1)) + ","+ CStr(Cells(i, 2))
und lasse ggf. ","+ weg, wenn das Komma schon in Spalte B vorhanden ist.
Gruß
Holger

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: kgb

Geschrieben am: 29.07.2008 15:37:18
Hallo Holger,
der Tipp war super. Das Makro funktioniert einwandfrei. Habe es auch noch auf zusätzliche Spalten erweitert.
Vielen, vielen Dank für Deine Hilfe. Hast mir damit enorm viel Arbeit erspart.
Alles Gute
Gruß
KGB

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: mpb

Geschrieben am: 28.07.2008 15:52:21
Hallo,
ich würde versuchen, das Übel an der Wurzel zu bekämpfen. Wie hast Du die Daten in Excel eingelesen, über den Textkonvertierungsassistenten? Wenn ja, was war als Trennzeichen und was als Dezimalzeichen eingestellt?
Poste doch mal Dein Makro, dass für eine Seite funktioniert, und eine Seite der doc/rtf-Datei, die einzulesen ist.
Gruß
Martin

Bild

Betrifft: AW: Makro Zelleninhalte kopieren und einfügen
von: kgb

Geschrieben am: 29.07.2008 15:42:00
Hallo Martin,
vielen Dank für Ihren Tipp. Habe den Texteditor benutzt aber keine Verbesserung erreicht. Zwischenzeitlich konnte mein Problem durch Holger gelöst werden.
Ich danke auch Ihnen für Ihre Mühe und Ihr Interesse.
Gruß
KGB

 Bild
Excel-Beispiele zum Thema "Makro Zelleninhalte kopieren und einfügen"
Blätter in andere Arbeitsmappen kopieren Module von Mappe zu Mappe kopieren
Arbeitsblatt 40 mal kopieren Schriftgröße beim Kopieren verdoppeln
Beim Kopieren auch die Zeilenhöhe und Spaltenbreite übernehmen Tabellencode nach Kopieren des Blattes löschen
Arbeitsmappe blitzschnell kopieren VBE-Namen der Blattmodule beim Kopieren festlegen
Blattinhalt von einer zur anderen Arbeitsmappe kopieren Formel bis zur letzten Zeile der Nebenspalte kopieren