Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1316to1320
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
Inhaltsverzeichnis

Zellen mit allen Funktionen kopieren

Zellen mit allen Funktionen kopieren
18.06.2013 11:45:14
Martin
hallo!
ich habe folgendes problem. ich moechte gerne die 1. zeile kopieren, und in einem anderes blatt auch in der ersten zeile einfuegen.
leider werden mir die sortierfunktionen der einzelnen zellen nicht mitkopiert (konnte den screenshot leider nicht uploaden). jede spalte kann sortiert werden (und klarerweise aendern sich dann alle weiteren zeilen mit).kann mir bitte jemand entsprechend weiterhelfen.
das ganze muesste mit einen vba code gemacht werden. (mit macro recorder habe ich leider keinen erfolg gehabt)
vielen dank im voraus,
gruss,
martin

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen mit allen Funktionen kopieren
18.06.2013 13:53:07
fcs
Hallo Martin,
das reine Kopiermakro sieht wie folgt aus.
leider werden mir die sortierfunktionen der einzelnen zellen nicht mitkopiert
was meinst du damit?
Zellen haben eigentlich keine Sortierfunktionen sonder enthalten Werte oder Formeln.
Wenn deine Zellen in Zeile 1 von Tabelle1 Formeln enthalten, die sich auf Zellen außerhalb der Zeile beziehn, dann gibt es mit großer Wahrscheinlichkeit Probleme.
Evtl. ist es besser nur Werte und Formate der Zeile 1 ins 2. Blatt zu kopieren.
Gruß
Franz
Sub CopyZeile1()
Dim wksQ As Worksheet, wksZ As Worksheet
Set wksQ = Worksheets("Tabelle1") 'Name anpassen
Set wksZ = Worksheets("Tabelle2") 'Name anpassen
If MsgBox("Kopiere Zeile 1 von """ & wksQ.Name & """ nach """ & wksZ.Name & """", _
vbQuestion + vbOKCancel, "Zeile kopieren") = vbOK Then
wksZ.Rows(1).Insert
wksQ.Rows(1).Copy Destination:=wksZ.Rows(1)
End If
End Sub

Anzeige
AW: Zellen mit allen Funktionen kopieren
18.06.2013 14:21:07
Martin
hallo franz!
vielen dank fuer deine erste hilfe! also das kopieren funktioniert nun schon. und auch mein problem, dass die filterfunktion (nicht sortierfunktion) nicht mitkopiert wird ist geloest, aber nur wenn ich das sub einmal durchlaufen lasse, und wenn das sheet3 noch sauber ist!
jetzt muesste das nur immer so sein, und auch die formatierung (spaltenbreite) muesste noch uebernommen werden. dann wuerde es fuer meine zwecke passen.
das suchkriterium 3805 wir spaeter von einem andern sub kommen, und daher variabel sein.
darf ich dir unten meinen code zur ansicht einfuegen?
danke im voraus,
gruss,
martin
Sub ZeilenKopieren3()
Dim lngStartZeile As Long, lngEndeZeile As Long
Dim wksQ As Worksheet, wksZ As Worksheet
Set wksQ = Worksheets("SPOC-Contingency Task")
Set wksZ = Worksheets("Sheet3")
wksZ.Rows(1).Insert
wksQ.Rows(1).Copy Destination:=wksZ.Rows(1)
Sheets("SPOC-Contingency Task").Select
ActiveSheet.Range("$a$1:$h$65536").AutoFilter Field:=1, Criteria1:="=3805", _
Operator:=xlAnd
For lngStartZeile = 2 To Cells.SpecialCells(xlCellTypeLastCell).Row
If Rows(lngStartZeile).Hidden = False Then
Cells(lngStartZeile, 2).Select
Exit For
End If
Next
lngEndeZeile = Cells(Rows.Count, (1)).End(xlUp).Row
lngEndeZeile = Cells(Rows.Count, "A").End(xlUp).Row
Range(Rows(lngStartZeile), Rows(lngEndeZeile)).Select
Selection.Copy
Sheets("Sheet3").Select
Rows("2:2").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll ToRight:=0
Sheets("SPOC-Contingency Task").Select
ActiveSheet.Range("$A$1:$H$65536").AutoFilter Field:=1
Range("A4").Select
Sheets("Sheet3").Select
ActiveSheet.Range("$A$1:$H$65536").AutoFilter Field:=1
Range("A1").Select
End Sub
/pre>

Anzeige
Nur mal so ...
18.06.2013 14:44:42
JACKD
.. ins Blaue geschossen...
Kann es sein, dass du "Einfach" nur die Filterkriterien übertragen möchtest?
Also wenn in Blatt1 SPalte1 Nordpol ausgewählt ist, soll das auch in Blatt2 Spalte1 selektiert werden?
Grüße

AW: Nur mal so ...
18.06.2013 14:56:04
Martin
hallo jackd!
nein, nicht ganz. im ersten sheet (SPOC-Contingency Task) sind eine unzahl von zeilen. und ich will mit einem filter alle jene zeilen auf ein neues sheet bringen (Sheet3) welche dieselbe zahl in der ersten spalte hatten. (das ist in dem code noch nicht abgebildet, habe momentan einen fixwert drinnen (3805)).
da ich im urspruenglichen sheet die filterfunktion bei allen spalten hatte, soll das auch am neuen sheet moeglich sein.
da es immer nur mit einem frischen sheet3 funktioniert (sonst wandern die filterbuttons bei jedem durchlauf eine zeile hinunter) habe ich jetzt einfach ein vorheriges loeschen des sheet3 eingebaut.
ich bin mir sicher, dass man das viel einfacher und eleganter machen kann, aber soweit reichen meine kenntnisse leider nicht ;-)
lg
martin

Anzeige
Das geht tatsächlich etwas einfacher =)
18.06.2013 15:20:40
JACKD
So zb
(vorrausgesetzt ich hab deine Aufgabenstellung verstanden)
Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy Worksheets("Tabelle1").Range("H1")

Mit diesem Befehl kopierst du alle sichtbaren (in deinem Fall die gefilterten Zellen)
Grüße

Muss natürlich noch angepasst werden
18.06.2013 15:22:17
JACKD

worksheets("SPOC-Contingency Task").Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy Worksheets("Tabelle3").Range("A1")

AW: Muss natürlich noch angepasst werden
18.06.2013 15:40:04
Martin
hallo jackd!
das ist genial! vielen herzlichen dank! nun muss ich nur mehr sicherstellen, dass die formatierung (speziell die spaltenbreite) so bleibt wie im original. hast du da vielleicht noch einen tip?
danke nochmals,
lg
martin

Anzeige
Danke für die Rückmeldung
18.06.2013 16:01:06
JACKD
Ich würde es über
Worksheets("Tabelle3").Range("A1").PasteSpecial Paste:=xlPasteAllUsingSourceTheme
probieren (Einfach hinten Anhängen)
Spaltenbreite geht afaik nicht direkt übers kopieren
Das wiederum würde ich über eine Schleife lösen
For i = 1 To UsedRange.Columns.Count
Worksheets("SPOC-Contingency Task").Columns(i).ColumnWidth = Worksheets("Tabelle3").Columns(i). _
ColumnWidth
Next i
!Ungetestet!
Bzw. ohne schleife wenn du nur eine Übertragen willst

AW: Danke für die Rückmeldung
18.06.2013 16:39:43
Martin
hallo jackd!
nochmals vielen dank, auch die schleife funktioniert. allerdings habe ich in der schleife die sheets vertauschen muessen, also die quelle, spoc-contingency task hinten und das ziel, tabelle3 vorne. nun geht es wunderbar!
danke nochmals fuer die schnelle hilfe!
lg
martin

Anzeige
AW: Danke für die Rückmeldung
18.06.2013 18:19:05
Jack
Ja stimmt. Hatte da nen Dreher drin.
Aber hast ja gut erkannt ;-)
Und schön wenn's klappt ;-)
Grüße

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige