Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
988to992
988to992
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

transponieren mit combobox

transponieren mit combobox
01.07.2008 12:04:56
hmkotu@lycos.de
Hallo zusammen,
ich hab da ein kleines Problem. ich kopiere derzeit über eine Userform einzelne Zellen in ein anderes
Tabellenblatt. Das klappt mit dem folgenden Macro super
Dim zeil%, mzeil%, ustart%, uende%, farbi, etr%, mzei%

Private Sub CommandButton1_Click()
zeil = Me.ComboBox1.ListIndex + 2
Range (Cells(zeil, 7) + Cells(zeil, 11))
Sheets("Einzeldaten").Activate
Cells(8, 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Da ich mehrere Zeilen habe die auch transponiert werden müssen ist es recht mühsam für jede
einzelne zelle ein Macro zu schreiben. Bin zufällig auf den folgenden Macro gestoßen.
Sub transponieren()
Dim rngZelle As Range, rngBereich As Range
Dim intZ As Integer, ws1 As Worksheet, ws2 As Worksheet
Set ws1 = Worksheets("Stammdaten")
Set ws2 = Worksheets("Einzeldaten")
Set rngBereich = ws1.Range("A1:C1")
For Each rngZelle In rngBereich
intZ = intZ + 1
ws2.Cells(intZ, 2).Value = rngZelle
Next
End Sub


Leider habe ich es nicht hinbekommen diese auf meine bedürfnisse umzustricken.
Die Zeile bei mir ist variabel bzw. wird vom Combobox1. ermittelt.
zeil = Me.Combobox1.listindex + 2
Die zu markierenden Zellen sind von (zeil+7) : (zeil+11)
Danke im Voraus
Gruß
Hamza

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: transponieren mit combobox
01.07.2008 12:31:27
Hamza
Bei dem ersten Macro hab ich mich wohl vergriffen.
So funktionierts bei mir richtig

Private Sub CommandButton1_Click()
zeil = Me.ComboBox1.ListIndex + 2
Cells(zeil, 7).Copy
Sheets("Einzeldaten").Activate
Cells(8, 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub


Gruß
Hamza

AW: transponieren mit combobox
01.07.2008 12:44:53
Hamza
es würde auch eine alternative gehen

AW: Was willst du wohin schreiben?
01.07.2008 14:06:00
Chris
Servus Hamza,
beschreib mal genauer, welche Zellen(Zeilen oder Spalten) du von wo, wohin transponiert haben möchtest.
Gruß
Chris

AW: Was willst du wohin schreiben?
01.07.2008 14:40:00
Hamza
Hallo chris,
erstmal danke für deine Antwort,
ich hab in einem Tabellenblatt (Stammdaten) Kundendaten angelegt.
aus diesem Tabellenblatt sollen einzelne Dateien in das Tabellenblatt (Einzeldaten)
kopiert werden.
Die einzelnen Kunden sind untereinander aufgelistet, Die Einzelnen Kundendaten wie Adresse etc. sind
in der jeweiligen Zeile nebeneinander.
z.B.
A1 = Kundenschlüssel; B1= Name; C1 = Strasse; D1 = Ort usw.
Über einen Userform mit Combobox/Command Button springe ich zu dem gewünschten Kunden.
Jetzt möchte ich das er mir in der Zeile des jeweiligen Kunden die Spalten 7 bis 10 kopiert
und diese im Arbeitsblatt (Einzeldaten) unter A8 bis A11 einfügt.
Ich hoffe ich konnte mich verständlich ausdrücken.
Gruß
Hamza

Anzeige
AW: Was willst du wohin schreiben?
01.07.2008 14:57:00
Hamza
Hallo Chris,
es sollen eigentlich viel mehr Daten kopiert werden.
ich wollte aber für die dann ein separates Macro schreiben.
Villeicht kann mann das ja auch mit einbinden
Ich möchte noch gerne
Aus Stammdaten in der jeweiligen Zeile die Spalten 2 bis 6 nach Tabellenblatt (Einzeldaten) in D8 bis D12,
sowie die Spalten 13 bis 250 nach Tabellenblatt (Einzeldaten) in B18 bis B255
Gruß
Hamza

AW: Was willst du wohin schreiben?
01.07.2008 15:44:00
Chris
Hallo Hamza,
kann ich machen, dauert aber ein wenig. Noch eine Frage:
Wie bekommst du über ListIndex +2 die Zeilennummer, was steht in der Combobox bzw. wodurch wird die Zeilennummer generell festgelegt?
Gruß
Chris

Anzeige
AW: Was willst du wohin schreiben?
01.07.2008 16:06:12
Hamza
Hallo Chris,
ich habe in meiner Combobox unter Eingenschaften/RowSource einfach
Stammdaten A2:A65536 eingegeben, also werden mir die gesamten Kundennamen
in der Combobox aufgelistet. Meine Kunden beginnen erst in der 2 Zeile und deswegen
benötige ich wohl die 2 hinter Listindex.
Ich hoffe das ist hilfreich.
Hier nochmal die Formel.
Dim zeil%, mzeil%, ustart%, uende%, farbi, etr%, mzei%

Private Sub CommandButton1_Click()
zeil = Me.ComboBox1.ListIndex + 2
Cells(zeil, 7).Select
End Sub


So kriege ich die gewünschte Spalte in der jeweiligen Zeile des Kunden selektiert.
Gruß
Hamza

Anzeige
AW: Was willst du wohin schreiben?
01.07.2008 18:09:37
Chris
servus Hamza,
müsste so passen, konnte mangels Daten nicht testen. Teste mal an einer Dummydatei.

Private Sub CommandButton1_Click()
Dim ArrayA(1 To 4) As Variant, ArrayB(1 To 233) As Variant, ArrayD(1 To 5) As Variant
Dim i As Long
zeil = Me.ComboBox1.ListIndex + 2
For i = 1 To UBound(ArrayA())
ArrayA(i) = Cells(zeil, i + 6)
Next i
For i = 1 To UBound(ArrayB())
ArrayB(i) = Cells(zeil, i + 12)
Next i
For i = 1 To UBound(ArrayD())
ArrayD(i) = Cells(zeil, i + 1)
Next i
For i = 1 To UBound(ArrayB())
Sheets("Einzeldaten").Cells(i + 7, 2) = ArrayB(i)
Next i
For i = 1 To UBound(ArrayA())
Sheets("Einzeldaten").Cells(i + 7, 1) = ArrayA(i)
Next i
For i = 1 To UBound(ArrayD())
Sheets("Einzeldaten").Cells(i + 7, 4) = ArrayD(i)
Next i
End Sub


Gruß
chris

Anzeige
AW: Was willst du wohin schreiben?
02.07.2008 12:55:19
Hamza
Hallo Chris,
klapt super!! vielen vielen Dank!!
genau so hatte ich mir das vorgestellt.
Jetzt hoffe ich das ich den Rest auch noch hinbekomme!
Danke nochmal...
Gruß
Hamza

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige