Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Erstellen neuer Arbeitsblätter mit Makro
#1
Hallo,
ich habe folgendes Problem:
Ich habe eine Excel Datei mit drei Arbeitsblättern. Auf allen Arbeitsblättern sind messergebnisse von drei unterschiedlichen Messungen aufgetragen, die miteinander verglichen werden sollen.
Dafür soll für jede Messung ein Neues Arbeitsblatt erstellt werden, auf dem die Ergebnisse der Versuche nebeneinander aufgetragen werden und am besten direkt auch grafisch dargestellt. Außerdem sollen noch einige einfache Berechnungen durchgeführt werden.
Jedes Arbeitsblatt soll im Prinzip gleich aussehn, nur die Werte unterscheiden sich.

In der angefügten Datei habe ich zur vereinfachung ein kleines Beispiel erstellt.
Im Beispiel sind die Blätter: Versuch A, Versuch B, Versuch C  meine gegebenen Blätter
Die Blätter Messung 1, Messung 2, Messung 3 sollen automatisch erstellt werden.


In meiner wirklichen Anwendung gibt es wesentlich mehr Werte und Messungen, so dass es eine Ewigkeit dauern würde alles händisch zu übertragen.
Würde mich sehr über eure hilfe freuen.

MFG


Angehängte Dateien
.xlsx   Beispiel.xlsx (Größe: 21,92 KB / Downloads: 8)
Antworten Top
#2
Hallo

Hier mal ein Ansatz mit Power Query.


Angehängte Dateien
.xlsm   clever_excel_forum_3992.xlsm (Größe: 52,64 KB / Downloads: 5)
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
danke hat mir super geholfen... habe zwar noch einige änderungen vorgenommen aber im großen und ganzen war das ne super idee...
:100:
Antworten Top
#4
Ohne Powerquery doch mit VBA:


Code:
Sub M_snb()
    Set c_00 = CreateObject("scripting.dictionary")
    Set c_01 = CreateObject("scripting.dictionary")
    Set c_02 = CreateObject("scripting.dictionary")
    
    For j = 1 To 3
       sn = Sheets("versuch " & Chr(64 + j)).Cells(1).CurrentRegion
       
       For jj = IIf(j = 1, 1, 2) To UBound(sn)
          For jjj = 2 To UBound(sn, 2)
             sp = Array(sn(jj, 1), "versuch" & IIf(jj = 1, "", Chr(64 + j)), "Messung" & IIf(jj = 1, "", jjj - 1), IIf(jj = 1, "Wert", sn(jj, jjj)))
             If jjj = 2 Then c_00.Item(c_00.Count) = sp
             If jjj = 3 Then c_01.Item(c_01.Count) = sp
             If jjj = 4 Then c_02.Item(c_02.Count) = sp
         Next
       Next
    Next
    
    Sheets.Add(, Sheets(Sheets.Count)).Cells(1).Resize(c_00.Count, 4) = Application.Index(c_00.items, 0, 0)
    Sheets.Add(, Sheets(Sheets.Count)).Cells(1).Resize(c_01.Count, 4) = Application.Index(c_01.items, 0, 0)
    Sheets.Add(, Sheets(Sheets.Count)).Cells(1).Resize(c_01.Count, 4) = Application.Index(c_02.items, 0, 0)
End Sub
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste