Anzeige
Archiv - Navigation
288to292
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
288to292
288to292
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Transponieren per VBA

Transponieren per VBA
01.08.2003 13:33:59
thomas scher
Hallo zusammen,
ich habe da wieder ein Problem.
Wie kann ich in einer aktuellen Tabelle nach dem in einer Inputbox gefragtem Datum suchen lassen und er soll mir dann ab diesem Datum bis zum Tabellen ende, diese Daten dann in eine neue kopieren aber quer also transponiert !
Ich hoffe ich habe es gut beschrieben...
Erstmal die Tabelle:



Das heist ich möchte das datum eingeben und er soll dann z.B. für den Montag den Bereich E2:e23 in ein neues Blatt transponieren und dann den nächsten Tag also Dienstag darunter..
vielen Dank und Gruss
Der Thomas

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

Betreff
Datum
Anwender
Anzeige
AW: Transponieren per VBA
01.08.2003 14:43:24
Boris
Hi Thomas,
ich bin jetzt nicht der VBA-Experte, aber ich hab dennoch mal nen Code geschrieben - bezogen auf den Tabellenaufbau (die Tabellenblätter heissen "Tabelle1" und "Tabelle2" - in Tabelle2 wird reinkopiert).
Option Explicit
Dim Ws1 As Worksheet
Dim Ws2 As Worksheet

Sub transponiere()
Dim C As Range
Dim Datum As Date
On Error GoTo fehler:
Set Ws1 = Worksheets("Tabelle1")
Set Ws2 = Worksheets("Tabelle2")
Datum = CDate(InputBox("Datum eingeben", "Datumseingabe", "TT.MM.JJJJ"))
For Each C In Ws1.[2:2]
If IsDate(C) Then
If C = Datum Then
Call Uebertrag(C)
Exit Sub
End If
End If
Next
Exit Sub
fehler:
MsgBox "Ungültiges Datum"
End Sub


Sub Uebertrag(C)
Dim lRow As Long, iCol As Integer
iCol = C.Column
Application.ScreenUpdating = False
Do Until Cells(2, iCol) = ""
Ws1.Range(Cells(2, iCol), Cells(23, iCol)).Copy
Ws2.Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False _
, Transpose:=True
iCol = iCol + 2
Loop
Application.ScreenUpdating = True
End Sub

Geht sicherlich eleganter, aber so geht´s vielleicht schon mal.
Starten muss du das Makro "transponiere".
Grüße Boris

Anzeige
Boris das ist der Hammer !! Danke !
01.08.2003 15:58:32
thomas scher
Hallo Boris,
dafür das VBA nicht dein Ding ist !!
Super vielen Dank es klappt wunderbar und ist perfect !!
Ein schönes Wochenende wünsche ich dir du hast mir ein schönes bescherrt
Danke der
Thomas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige