Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Excel
  Makro: Beliebige Zellen kopieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Makro: Beliebige Zellen kopieren (12413 mal gelesen)
swaro
Mitglied


Sehen Sie sich das Profil von swaro an!   Senden Sie eine Private Message an swaro  Schreiben Sie einen Gästebucheintrag für swaro

Beiträge: 1
Registriert: 24.07.2013

erstellt am: 24. Jul. 2013 12:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen!

Ich hab folgendes Problem. Ich haben hier ein Codeausschnitt gefunden der mir nur eine Zeile in ein anderes Excel Sheet kopiert, ich such aber ein Befehl mitdem ich mehrere ausgewählte Zellen in ein anderes Sheet bringen kann. Was muss ich umändern?

Code:
Public Sub test()
    With Worksheets("Tabelle2")
        ActiveCell.Copy Destination:=.Cells(.Rows.Count, 2).End(xlUp).Offset(1)
    End With
End Sub


Wäre für jede konstruktive Antwort dankbar. 


Gruß,

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bernd P
Ehrenmitglied V.I.P. h.c.
cook-general



Sehen Sie sich das Profil von Bernd P an!   Senden Sie eine Private Message an Bernd P  Schreiben Sie einen Gästebucheintrag für Bernd P

Beiträge: 3358
Registriert: 07.06.2001

W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365

erstellt am: 24. Jul. 2013 16:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Code:
Public Sub test()
    With Worksheets("Tabelle2")
        Selection.Copy Destination:=.Cells(.Rows.Count, 2).End(xlUp).Offset(1)
    End With
End Sub

------------------
<----- Bitte Systeminfo eintragen, warum siehst du hier. "Warum Einfach es geht auch kompliziert". Schöne Grüsse aus der Steiermark  Bernd P. Sport ist Mord
Rekorde: Scalelist>11727, Fehler>34365, Layerfilter>XXXX

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Herald
Mitglied


Sehen Sie sich das Profil von Herald an!   Senden Sie eine Private Message an Herald  Schreiben Sie einen Gästebucheintrag für Herald

Beiträge: 5
Registriert: 25.07.2013

erstellt am: 25. Jul. 2013 11:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Hallo Bernd!


Ich bin in VDA ein blutiger Anfänger, darum verzeiht schonmal.

Hab ein ähnliches Problem, nur muss ich aus mehreren verbundenen Spalten mit mehreren Zellen darunter, sie auf einer Spalte bringen und den Wert in ein Excel Sheet bringen.

Zelle0|.A.|.B.|.C|D|.E.|.........|.P.|.Q.|.R.|....
Zelle1|.DAY.|WERT1|..........|Decription
Zelle2|.DAY.|WERT2|..........|Decription
Zelle3|.DAY.|WERT3|..........|Decription
Zelle4|.DAY.|WERT4|..........|Decription


Die Zelle A1 & B1 sind miteinander verbunden und A2 & B2 ... usw, und die Zelle C1 & D1 & E1 und C2 & D2 & E2 ... usw P1 & Q1 & R1 ..  usw

Demnach geh ich wie folgt vor:

Code:
Range("B1:B4").Delete
Range("C1:E4").Delete
Range("N1:P4").Delete

Das Problem hierbei ist, dass ich hier schon die Zellen auswähle also (active) setze und nicht (select) setze, da die Zellen immer unterschiedlich lang sind, die Spalten aber immer gleich, will ich das er mir die Spalten löscht die ich auswähle, den Inhalt aber drin lässt!

Hier schaff ich es nur die ganze Spalte zu löschen!

Code:
Sub löschen()
ActiveWindow.RangeSelection.Rows.Delete
End Sub


Zusatzproblem: Die Spalte P Q R welches nach dem delete auf M O P rutscht, soll nicht auf der gleichen Zelle im Dokument kopiert werden, sondern auf die Zelle U2

Wäre durchaus Dankbar! Auch nur für Ratschläge!      

------------------
LG

[Diese Nachricht wurde von Herald am 25. Jul. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

carsten-3m
Mitglied
Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)


Sehen Sie sich das Profil von carsten-3m an!   Senden Sie eine Private Message an carsten-3m  Schreiben Sie einen Gästebucheintrag für carsten-3m

Beiträge: 950
Registriert: 08.05.2007

Excel 2010

erstellt am: 25. Jul. 2013 13:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Bitte das Problem so schildern, dass es nachvollziehbar wird. Momentan... Bahnhof 

"...Zellen sind unterschiedlich lang, Spalten aber immer gleich". Was soll das bedeuten? Hat das mit den teilweise verbundenen Zellen zu tun? Oder meinst Du die Formatierung von Spaltenbreite und Zeilenhöhe? Oder ist die Länge des (Text-)Inhalts der Zellen gemeint?

"...die Spalten löscht die ich auswähle, den Inhalt aber drin lässt". Das geht faktisch gar nicht. Möglicherweise meinst Du hier etwas anderes. Das Gegenteilige ließe sich bewerkstelligen, Spalte beibehalten und Inhalt löschen. Sobald Du aber Spalten eliminierst, geht deren Inhalt gleichmaßen flöten.

"Zusatzproblem:..." Was Du hier schilderst ist eine Aufgabenstellung, keine Problemstellung. Wo hakt es denn? Wo bleibst Du hängen? Was hast Du schon ausprobiert?

------------------
Gruß, Carsten

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Herald
Mitglied


Sehen Sie sich das Profil von Herald an!   Senden Sie eine Private Message an Herald  Schreiben Sie einen Gästebucheintrag für Herald

Beiträge: 5
Registriert: 25.07.2013

erstellt am: 25. Jul. 2013 14:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Hallo carsten-3m!
Auf jeden Fall vielen Dank, dass Du dich mit meinem Problem auseinandersetzt!        

Hoffe Du hast es anhand des Bildes leichter zu durchblicken. Endschuldige meiner schwammigen Formulierung.

In einer Excel Datei sind nebeneinander stehenden Spalten Werte eingetragen. Diese Werte sollen automatisch in eine andere Excel Datei uebernommen werden, wobei der Inhalt der Spalten in eine Spalte kombiniert werden soll.
Das soll fuer alle Zellen geschehen, die einen Wert in den jeweiligen Spalten aufweisen und in eine bestimmte Spalte im zweiten Dokument eingefuegt werden.

Die Spalten im Dokument sind immer gleich! Nur die Zellen ändern sich.

Die Zusatzvorraussetzung ist folgendes:
Ich schaff es zwar die Zellen und Spalten ins andere Dokument zu bringen, aber kann nicht für jede Spalte entscheiden auf welche Spalte sie im zweiten Dokument hinkopiert werden soll.

Code:
Public Sub zelleeinfueg()
    With Worksheets("Sheet2")
        Selection.Copy Destination:=.Cells.End(xlUp).Offset(2)
    End With
End Sub

EDIT: Bild entfernt und unten eingefügt!

[Diese Nachricht wurde von Herald am 25. Jul. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

carsten-3m
Mitglied
Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)


Sehen Sie sich das Profil von carsten-3m an!   Senden Sie eine Private Message an carsten-3m  Schreiben Sie einen Gästebucheintrag für carsten-3m

Beiträge: 950
Registriert: 08.05.2007

Excel 2010

erstellt am: 25. Jul. 2013 14:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich


Kein_Bild.JPG

 
Bitte Bild hochladen, da nicht sichtbar (Firmeneinstellung).

------------------
Gruß, Carsten

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Herald
Mitglied


Sehen Sie sich das Profil von Herald an!   Senden Sie eine Private Message an Herald  Schreiben Sie einen Gästebucheintrag für Herald

Beiträge: 5
Registriert: 25.07.2013

erstellt am: 25. Jul. 2013 14:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich


Excel-Screenshot.jpg

 
Ganz vergessen!

~Datei~

------------------
LG

EDTI: JPG DATEI zugefügt

[Diese Nachricht wurde von Herald am 25. Jul. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

carsten-3m
Mitglied
Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)


Sehen Sie sich das Profil von carsten-3m an!   Senden Sie eine Private Message an carsten-3m  Schreiben Sie einen Gästebucheintrag für carsten-3m

Beiträge: 950
Registriert: 08.05.2007

Excel 2010

erstellt am: 25. Jul. 2013 15:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Mal sehen, ob ich's begriffen habe:

In den Spalten A, C, F und P des Quellblatts können Werte enthalten sein. Abhängig davon, ob in einer Zeile eine der o. g. Spalten einen Wert aufweist, soll die ganze Zeile kopiert und in ein Zielblatt eingefügt werden. Dabei möchtest Du auf die Spalten verzichten, die durch die Zellverbindung auf dem Quellblatt vorhanden sind.

Richtig?

Edit:

Wäre dem so, stellte sich umgehend die Frage, wozu hier VBA zum Einsatz kommen soll. Die Aufgabenstellung ließe sich mit Standardmethoden (Kopieren, Einfügen, Sortieren, Löschen) bewerkstelligen. Wäre die Tabelle jedoch eine sich ständig aktualisierende, kämen zwei Lösungsansätze in Betracht:
1. Tabelle akzeptieren wie sie ist und VBA nutzen, um den Kopiervorgang zu erledigen
2. Tabellenerzeuger bitten, die Tabelle gleich in einem wunschgemäßen Format anzubieten

------------------
Gruß, Carsten

[Diese Nachricht wurde von carsten-3m am 25. Jul. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Herald
Mitglied


Sehen Sie sich das Profil von Herald an!   Senden Sie eine Private Message an Herald  Schreiben Sie einen Gästebucheintrag für Herald

Beiträge: 5
Registriert: 25.07.2013

erstellt am: 25. Jul. 2013 16:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich


excel2.jpg

 
Genau bzw auf "F" kann verzichtet werden da diese Spalte nicht gelesen/kopiert werden soll.

Und eben, dass die Zellen in einer Spalte die ich markiere, in eine beligebige Zelle (im zweiten Dokument) eingefügt werden soll.

Ich kann ja die Zelle AB mit einem Zelle nicht ansprechen? Ich bin ja gezwungen auf die anderen Zellen zu verzichten, welche verbunden sind und zu löschen?

Und durch dem Befehl löschen der verbundenen Spalten kommt es nun zu dem "Ereignis" (siehe Bild)

Ich markiere Zelle A1-A3 und wills im anderen Dokument auf die Spalte D2

1. geht leider nicht, da ich es mit einem Button starten will

2. geht leider nicht

------------------
LG

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Frank88
Mitglied



Sehen Sie sich das Profil von Frank88 an!   Senden Sie eine Private Message an Frank88  Schreiben Sie einen Gästebucheintrag für Frank88

Beiträge: 153
Registriert: 11.10.2004

Civil3D 2018

erstellt am: 25. Jul. 2013 17:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Hallo Herald,

ich bin mir auch nicht sicher, ob ich's richtig verstanden habe.
Folgender Code kopiert Dir aus einer Mappe, Tabelle 1 den Inhalt der markierten Zeile in eine Mappe namens Zieldatei.xls, Tabelle 1, gleiche Zeile (Zieldatei muss dafür geöffnet sein).
Die Quellmappe ist aufgebaut, wie in Deinem Beispielbild - A+B, C+D+E, P+Q+R
Inhalt von A+B wird in gleiche Zeile, Spalte A der Zieldatei kopiert, Inhalt von C+D+E in Spalte B, Inhalt P+Q+R in Spalte C.

Code:
Sub Kopie()
WBQ = ThisWorkbook.Name
WBZ = "Zieldatei.xls"
Zeile = Selection.Row
Workbooks(WBZ).Sheets(1).Cells(Zeile, 1).Value = Workbooks(WBQ).Sheets(1).Cells(Zeile, 1).Value
Workbooks(WBZ).Sheets(1).Cells(Zeile, 2).Value = Workbooks(WBQ).Sheets(1).Cells(Zeile, 3).Value
Workbooks(WBZ).Sheets(1).Cells(Zeile, 3).Value = Workbooks(WBQ).Sheets(1).Cells(Zeile, 16).Value
End Sub

Grüsse, Frank

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Herald
Mitglied


Sehen Sie sich das Profil von Herald an!   Senden Sie eine Private Message an Herald  Schreiben Sie einen Gästebucheintrag für Herald

Beiträge: 5
Registriert: 25.07.2013

erstellt am: 26. Jul. 2013 10:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für swaro 10 Unities + Antwort hilfreich

Hallo Frank88!

Das ist genau was ich wollte. Perfekt, danke!!  

------------------
LG


EDIT: Unities wurden auch verteilt, danke nochmals an alle!   

[Diese Nachricht wurde von Herald am 26. Jul. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz