Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1452to1456
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

Kopieren einer Zeile mit Auswahl einer Zeile

Kopieren einer Zeile mit Auswahl einer Zeile
27.10.2015 11:50:40
Sav
Hallo miteinander!
Ich sitze an einem Problem bei dem ich nicht weiter komme.
Ich möchte aus meinen Ausgangssheet eine Zeile kopieren und transponiert in ein Zielsheet einfügen. Da ich jeweils nur eine Zeile aus dem Ausgangssheet in eines der Zielsheets 1,...,n einfügen möchte, habe ich den Teil des Kopierens verdoppelt (Alle Zielsheets sind vom Aufbau identisch). Die Sheets haben alle individuelle Namen und daher habe ich keine Schleife oder ähnliches integriert.
Problem 1:
Ich möchte die Spalte, in der die Wert eingetragen werden über die Variable Datum ansteuern ,leider funktioniert dies noch nicht richtig. Kann mir jemand sagen warum? (siehe Code)
Problem 2:
Die Spalte, in die die Werte aus dem Ausgangssheet in dem Zielsheet eingetragen werden sollen, hat in der obersten Zeile ein Datum. In welche Spalte die Daten nun kopiert werden sollen hängt von einem Datum in Sheet Datumszuweiser Zelle A1 ab.
Meine Vorstellung des Makros wäre nun:
Prüfen welches Datum in Sheets(Datumszuweiser).Range("A1") ist ausgewählt?->Suche dieses Datum in der Zeile 1 in Sheet Zielsheet-> Setze Variable Datum als z.B. Spalte D (in der sich das gleiche Datum befindet) mit der Zeile 9 (immer gleiche Zeile)-> kopiere die Werte wie in Problem 1 beschrieben.
Sheet

Sub Transponieren()
Dim Datum As Range
Set Datum = Range("D9")
Sheets("Ausgangssheet").Range("E71:GE71").Copy
Sheets("Zielsheet1").Datum.PasteSpecial Paste:=xlValues, Operation:=xlNone,  _
SkipBlanks:= _
False, Transpose:=True
Sheets("Ausgangssheet").Range("E18:GE18").Copy
Sheets("Zielsheet2").Datum.PasteSpecial Paste:=xlValues, Operation:=xlNone,  _
SkipBlanks:= _
False, Transpose:=True
End Sub

Über Tipps zur Lösung von Problem 1 und 2 wäre ich sehr dankbar!
Viele Grüße
Sav

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren einer Zeile mit Auswahl einer Zeile
27.10.2015 15:00:12
matthias
Hallo Sav,
Problem1: Set Datum = Range("D9")
Ohne Angabe eines Tabellenblattes wird dieser Ausdruck gewertet als 'ActiveSheet.Range("D9")', daher dein Fehler in der Paste-Zeile.
Lösung:

Dim Datum As String
Datum = "D9"
Sheets("Zielsheet1").Range(Datum).PasteSpecial '...
Problem2:
Sheets("").Range("").Find() - ist die Suchfunktion, welche du benötigst um dein Datum zu finden.
Sheets("").Cells(Zeile,Spalte) - ist nützlich um Spalten im Zahlenformat anzugeben, wenn man nicht den Buchstaben zur Verfügung hat.
Statt für jedes Sheet die Befehle zu wiederholen, kann man den Sheet-Namen einer Variablen übergeben und die Befehle mit diesen wiederholen. Komplett sieht das etwa so aus:
Sub Transponieren()
Dim dDatum As Date
Dim rZelle As Range
Dim lZielspalte As Long, x As Long
Dim sZielsheet As String, sRange As String
dDatum = Sheets("Datumszuweiser").Range("A1").Value
For x = 1 To 2 '(x = 1 To n)
Select Case x 'Auswahl Zielsheet und Paste-Bereich
Case 1: sZielsheet = "Zielsheet1": sRange = "E71:GE71"
Case 2: sZielsheet = "Zielsheet2": sRange = "E18:GE18"
'Case n: ...
End Select
'Datum suchen
Set rZelle = Sheets(sZielsheet).Rows(1).Find(What:=dDatum, _
LookAt:=xlWhole, LookIn:=xlValues)
If Not rZelle Is Nothing Then 'Wenn nicht Nichts gefunden wurde führe Aktionen aus
lZielspalte = rZelle.Column
Sheets("Ausgangssheet").Range(sRange).Copy
Sheets(sZielsheet).Cells(9, lZielspalte).PasteSpecial _
Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Else
'... deine Aktionen wenn Datum nicht gefunden wurde
Next x
End If
End Sub
lg Matthias

Anzeige
AW: Kopieren einer Zeile mit Auswahl einer Zeile
27.10.2015 17:39:45
Sav
Hallo Matthias!
Vielen Dank für deine ausführliche Beschreibung!=)
In den kommenden Tagen werde ich versuchen die Codeteile bei mir einzubauen!
Heute komme ich leider nicht mehr dazu :/
Viele Grüße

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige