Anzeige
Archiv - Navigation
1276to1280
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

Transponieren

Transponieren
Karel
Hallo,
ich habe folgendes Problem:
Tabelle1 spalte Artikelnummer Attributname Attribut wert untereinander bei jede Attribut wert ist gleiche artikelnummer nochmals aufgelistet.
Ist zustand
10000 Breite ca. 47cm
10000 Höhe ca. 59cm
10000 Material Rattan
10000 Sitzhöhe ca. 32cm
10000 Sitztiefe ca. 33cm
Soll zustand
Einmal artikelnummer mit einmal attributwert auf eine Zeile, Attributname in Zeile 1
Habe zu beispiel Mappe hinzugefügt
https://www.herber.de/bbs/user/81774.xlsx
Tabelle "Ist" hat über 6000 Daten ist sind unterschiedliche Atributwerte möglich
Grüße
Karel

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Transponieren
09.09.2012 20:46:56
Josef

Hallo Karel,
Soll

 ABCDEFGHIJKLM
1ArtikelnummerBreiteTiefeHöheSitztiefeSitzhöheArmlehnenhöheAnlieferungAusführungFarbeHerstellungMaterialOberfläche
210000ca. 47cmca. 40cmca. 59cmca. 33cmca. 32cm     Rattan 
310001ca. 30 cmca. 30 cmca. 40 cm       Teakholznaturbelassen
410002ca. 50 cmca. 57 cmca. 100 cmca. 43 cmca. 50 cm 1 Teil weiß Rattan 
510003ca. 50 cmca. 57 cmca. 100 cmca. 43 cmca. 50 cm 1 Teil natur Rattan 
610004ca. 67 cmca. 69 cmca. 86 cmca. 45 cmca. 48 cmca. 67 cm1 Teil natur Rattan 
710005ca. 48 cmca. 60 cmca. 90 cm ca. 47 cm  MassivholznaturhandgefertigtTeak recyceltunbehandelt
810006ca. 48 cmca. 28 cmca. 48 cm    MassivholznaturhandgefertigtTeakholz recyceltunbehandelt

Formeln der Tabelle
ZelleFormel
B2{=WENN(ISTFEHLER(VERGLEICH($A2&B$1;Ist!$A$2:$A$1000&Ist!$B$2:$B$1000;0)); "";INDEX(Ist!$C$2:$C$1000;VERGLEICH($A2&B$1;Ist!$A$2:$A$1000&Ist!$B$2:$B$1000;0)))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

« Gruß Sepp »

Anzeige
AW: Transponieren
09.09.2012 21:52:33
Karel
Gute Abend Sepp,
Geile Formel, habe zu eben probiert.
Problem ist nur bei große Datenmengen da wird es langsam.
Ist es mit VBA sneller!
Grüße
Karel

AW: Transponieren
09.09.2012 22:06:02
Josef

Hallo Karel,
VBA geht natürlich auch.
Sub transposeList()
  Dim rng As Range
  Dim vntRet As Variant
  Dim strFirst As String
  Dim lngRow As Long
  
  Dim lngCalc As Long
  
  On Error GoTo ErrExit
  
  With Application
    .ScreenUpdating = False
    .EnableEvents = False
    lngCalc = .Calculation
    .Calculation = -4135
    .DisplayAlerts = False
  End With
  
  With Sheets("Soll")
    For lngRow = 2 To Application.Max(2, .Cells(.Rows.Count, 1).End(xlUp).Row)
      Set rng = Nothing
      strFirst = ""
      Set rng = Sheets("Ist").Columns(1).Find(What:=.Cells(lngRow, 1), LookIn:=xlValues, _
        LookAt:=xlWhole, MatchCase:=False, After:=Sheets("Ist").Cells(1, 1))
      If Not rng Is Nothing Then
        strFirst = rng.Address
        Do
          vntRet = Application.Match(rng.Offset(0, 1), .Rows(1), 0)
          If IsNumeric(vntRet) Then
            .Cells(lngRow, vntRet) = rng.Offset(0, 2).Value
          End If
          Set rng = Sheets("Ist").Columns(1).FindNext(rng)
        Loop While Not rng Is Nothing And strFirst <> rng.Address
      End If
    Next
  End With
  
  ErrExit:
  
  With Err
    If .Number <> 0 Then
      MsgBox "Fehler in Prozedur:" & vbTab & "'transposeList'" & vbLf & String(60, "_") & _
        vbLf & vbLf & IIf(Erl, "Fehler in Zeile:" & vbTab & Erl & vbLf & vbLf, "") & _
        "Fehlernummer:" & vbTab & .Number & vbLf & vbLf & "Beschreibung:" & vbTab & _
        .Description & vbLf, vbExclamation + vbMsgBoxSetForeground, _
        "VBA - Fehler in Prozedur - transposeList"
      .Clear
    End If
  End With
  
  On Error GoTo 0
  
  With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = lngCalc
    .DisplayAlerts = True
    .StatusBar = False
  End With
  
  Set rng = Nothing
End Sub



« Gruß Sepp »

Anzeige
ot Transponieren
10.09.2012 07:10:01
Karel
Hallo Sepp,
Vielen Dank
Grüße
Karel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige