Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Spalten untereinander einfügen





Frage

Hallo, ich brauch Eure Hilfe!!!! Ich hab eine Tabelle erstellt mit fahrzeugdaten. In den Überschriften steht dann sowas wie Hersteller, Typ, Motor, Getriebe, usw.. Jetzt möchte ich in einer neuen Datei die Daten übernehmen, aber nicht mehr die überschriften neben einander sonder jetzt untereinander. Das untereinander Einfügen der Daten bekomme ich hin. Jetzt meine Frage, da die Datei sehr groß ist, ist das ein großer aufwand jede Zeile einzeln z makieren und einzufügen. Ist es möglich das ich alle aus der alten Datei makiere, kopiere und einfüge das in der neuen Datei alles untereinander steht?? Beispiel: alte Tabelle: Hersteller Typ Motor Gertiebe Kraftstoff Audi A4 2,5 TDI Autom. Diesel VW Golf 1,9 Manuell Benzin Ford Mondeo 1,8 Manuell Benzin neue Tabelle: Herrsteller: Audi Typ: A4 Motor: 2,5 TDI Getriebe Autom. Kraftstoff Diesel Hersteller VW Typ Golf Motor 1,9 Getriebe Manuell Kraftstoff Benzin Hersteller Ford Typ Mondeo Motor 1,8 Getriebe Manuell Kraftstoff Benzin Gruß Elhamplo

Antwort 1 von coros

Hi Elhamplo,

ich wage mal einen Versuch. Bevor Du aber das nachfolgende Makro testest, mache bitte erste eine Kopie Deiner Originaldatei.

Kopiere das Makro in ein StandardModul und starte es über eine Befehlsschaltfläche.

Option Explicit

Sub Daten_wandeln()
Dim Wiederholungen As Integer, erste_freie_Zeile As Integer
Application.ScreenUpdating = False
For Wiederholungen = 2 To ActiveSheet.UsedRange.Rows.Count
erste_freie_Zeile = Sheets("Tabelle2").Range("A65536").End(xlUp).Offset(1, 0).Row
Rows("1:1").Copy
Sheets("Tabelle2").Cells(erste_freie_Zeile, 1).PasteSpecial Transpose:=True
Rows(Wiederholungen).Copy
Sheets("Tabelle2").Cells(erste_freie_Zeile, 2).PasteSpecial Transpose:=True
Next
End Sub


In diesem Makro wird davon ausgegangen, dass in Zeile 1 die Überschriften wie Hersteller, Typ, Modell usw. und ab Zeile 2 die Autodaten stehen. Das Makro macht folgendes: Es kopiert die Daten aus Spalte 1 und fügt sie in Blatt "Tabelle2" (Blattname muss eventuell angepasst werden) in die erste freie Zeile in Spalte A wieder ein. Danach werden die Autodaten aus der durch die Schleife angesprochenen Zeile kopiert und in Spalte B kopiert. Das ganze so oft, bis die letzte Zeile in dem aktiven Blatt erreicht ist.

Ich hoffe, Du hast das so gemeint. Bei Fragen melde Dich,

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von Event

Hallo

Option Explicit

Sub uebernahme()
Dim i As Double, e%, z As Double, felda(6)
z = 1
For e = 1 To 5
felda(e) = Sheets("Tabelle1").Cells(1, e).Value
Next
For i = 2 To Sheets("Tabelle1").UsedRange.SpecialCells(xlCellTypeLastCell).Row
For e = 1 To 5
Sheets("Tabelle2").Range("A" & CStr(z)).Value = felda(e)
Sheets("Tabelle2").Range("B" & CStr(z)).Value = Sheets("Tabelle1").Cells(i, e).Value
z = z + 1
Next
Next
End Sub


Gruß

Antwort 3 von Elhamplo

Hallo,

Sorry, hatte keine Zeit, konnte mich erst jetzt melden!

@ coros

Super, war genau was ich brauchte!! Funktioniert super!! Hat mir echt sau viel arbeit abgenommen. Ich Danke Dir für die Hilfe.

@ event

Danke für Deine Hilfe!! Dank Dir.
Der Code übernimmt aber nicht alle Spalten? Hab es nicht hinbekommen wie ich das erwitern kann.

@ beide

Nochmals danke für Eure Hilfe!!!!

Ich wünsche Euch einen guten Rutsch ins neue Jahr!!!!!

Gruß

Elhamplo

Antwort 4 von coros

Moin Elhamplo,

danke Dir für Deine Rückmeldung. Auch Dir einen guten Rutsch ins neue Jahr.

MfG,
Oliver
Jeder macht was er will, keiner macht was er soll, aber alle machen mit.