MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 17.05.2018, 07:15   #1
rainerZZ
MOF Profi
MOF Profi
Standard Excel2010 - Mehrere Zellen in Zw.ablage kopieren

Hallo zusammen,

mein Ziel: in Spalte A mehrere Zellen markieren (z.B. 13,15 und 20) und via VBA in die Zwischenablage kopieren, um diese dann manuell an anderer Stelle untereinander einzufügen. Hier meine ersten Versuche:

Code:

Dim i As Long
Dim ClipAbLage As DataObject

For i = 12 To 1996

If Not Application.Intersect(Selection, Range("A" & i)) Is Nothing Then

    Set ClipAbLage = New DataObject
    
    ClipAbLage.SetText Range("A" & i).Text´
    ClipAbLage.PutInClipboard
    
End If

Next i

MsgBox "In Zw.ablage kopiert"
Wie bekomme ich es hin, mehrere Zellen auf einmal untereinander in die Zw.ablage zu bekommen?

Danke schonmal für eure Hilfe.
rainerZZ ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 07:18   #2
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Überleg doch mal, was deine Schleife genau macht und überleg was passieren würde, wenn du das Ganze händisch durchführen würdest...

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 07:23   #3
rainerZZ
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard

Zitat:

Überleg doch mal, was deine Schleife genau macht und überleg was passieren würde, wenn du das Ganze händisch durchführen würdest...

Jedes mal, wenn eine Zelle erneut ausgewählt ist, springt er in die "If-Funktion" rein. Mein Problem ist, dass ich dann den ausgelesenen Text direkt in die Zwischenablage kopiere und somit meine Zw.ablage immer überschreibe.

Ich muss mir den Text erst vollständig zusammenbauen und nach der Schleife in die Zw. ablage kopieren.

Ich weiß aber nicht, wie ich in VBA sage: "hänge jetzt an das, was du aus Zeile x ausgelesen hast, das an, was du aus Zeile x+1 ausgelesen hast"...
rainerZZ ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 07:33   #4
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Und wieso muss es überhaupt in die Zwischenablage? Kannst du die jeweilige Zeile nicht gleich direkt in die Zieltabelle übertragen?

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 07:45   #5
rainerZZ
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard

Zitat:

Und wieso muss es überhaupt in die Zwischenablage? Kannst du die jeweilige Zeile nicht gleich direkt in die Zieltabelle übertragen?

Wäre auch denkbar, aber das soll nur als Hilfestellung für den Anwender dienen und keine vollautomatisierte Lösung darstellen.

Die Zw.ablage würde mir besser gefallen.
rainerZZ ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 08:52   #6
MisterBurns
MOF Koryphäe
MOF Koryphäe
Standard

Ich habe es so verstanden, dass der User mehrere Zellen markiert und diese sollen in die Zwischenablage kopiert werden.
Dann arbeite doch einfach ohne Schleife, ein einfacher Copy-Befehl sollte ausreichen. Auch wenn die ausgewählten Zellen nicht direkt nacheinander sind, werden sie am Ziel zusammenhängend eingefügt (zumindest in meinem Versuch).

__________________

Schöne Grüße
Berni
MisterBurns ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 09:06   #7
Mc Santa
MOF Meister
MOF Meister
Standard

Ich würde es etwa wie folgt machen:
Code:

Sub su()

    Dim strTmp As String
    Dim strDelim As String
    Dim i As Long
    Dim ClipAbLage As DataObject
    
    strTmp = ""
    strDelim = " " ' Das Trennzeichen zwischen den Zellen festlegen
    
    For i = 12 To 1996
    
        If Not Application.Intersect(Selection, Range("A" & i)) Is Nothing Then
        
            strTmp = strTmp & strDelim & Range("A" & i).Text
            
        End If
    Next i
    
    If Not strTmp = "" Then
        strTmp = Mid(strTmp, Len(strDelim)) ' Trennzeichen am Anfang löschen
    End If
    
    Set ClipAbLage = New DataObject
    ClipAbLage.SetText strTmp
    ClipAbLage.PutInClipboard
    
    MsgBox "In Zw.ablage kopiert"
    
End Sub

__________________

Nützliches
Wie erstelle ich eine Pivot-Tabelle? (Link)
Alternative (Link ohne YouTube)

Du kannst hilfreiche Beiträge bewerten (Symbol unten links)
Mc Santa ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 19:02   #8
rainerZZ
Threadstarter Threadstarter
MOF Profi
MOF Profi
Standard

Zitat:

Kannst du die jeweilige Zeile nicht gleich direkt in die Zieltabelle übertragen?

Bevor ich eure letzten Antworten lesen konnte, habe ich es anstatt mit der vorgeschlagenen Zieltabelle mit einer Hilfstabelle gemacht. In die Hilfstabelle schreibe ich die ausgewählten Zeilen und kopiere dann die gesamte Hilfstabelle in die Zwischenablage. Funktioniert wunderbar

Probiere die letzten 2 Lösungen aber morgen noch aus...

Danke euch für die Hilfe.
rainerZZ ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:07 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.