Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Werte der Diagonale kopieren

Forumthread: Werte der Diagonale kopieren

Werte der Diagonale kopieren
21.08.2013 12:05:24
Sebastian
Hallo zusammen!
Ich hab schon ewig gesucht, aber noch keine Lösung für mein problem gefunden. Ich habe eine Tabelle und möchte gern die Werte auf der Diagonale von E5 bis OY415 kopieren, um diese dann in ein neues Tabellenblatt einzufügen.
Gibt es da irgendwelche Mittel und Wege um das zu bewerkstelligen?
Besten Dank und Gruß
Sebastian

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Werte der Diagonale kopieren
21.08.2013 12:23:14
{Boris}
Hi Sebastian,
wenn Du wirklich kopieren möchtest, dann z.B. so:
Option Explicit Sub diagonal() Dim x As Long For x = 5 To 415 Tabelle1.Cells(x, x).Copy Tabelle2.Cells(x, x) Next x End Sub VG, Boris

AW: Werte der Diagonale kopieren
21.08.2013 12:53:55
Sebastian
Hallo Boris,
ja, genau so hatte ich mir das vorgestellt. Hat prima funktioniert. Vielen Dank!
Gruß,
Sebastian

Anzeige
AW: Werte der Diagonale kopieren
21.08.2013 12:24:52
Erich
Hi Sebastian,
wo sollen die Diagonalwerte im neuen Tabellenblatt erscheinen? In einer Zeile? Oder einer Spalte?
Was genau meinst du mit "kopieren/einfügen"? Per Hand? Mit VBA? Nur Werte oder auch Formate usw.?
Vielleicht geht es ja auch mit einer Formel:
Tabelle1

 EFG
5505506 
6605606607
7 706707


Tabelle2

 ABCD
2 505606707
3    
4505   
5606   
6707   

Formeln der Tabelle
ZelleFormel
B2=INDEX(Tabelle1!$A$1:$OY$415;SPALTE(E5); SPALTE(E5))
C2=INDEX(Tabelle1!$A$1:$OY$415;SPALTE(F5); SPALTE(F5))
D2=INDEX(Tabelle1!$A$1:$OY$415;SPALTE(G5); SPALTE(G5))
A4=INDEX(Tabelle1!$A$1:$OY$415;ZEILE(A5); ZEILE(A5))
A5=INDEX(Tabelle1!$A$1:$OY$415;ZEILE(A6); ZEILE(A6))
A6=INDEX(Tabelle1!$A$1:$OY$415;ZEILE(A7); ZEILE(A7))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Hier werden die Ergebnisse in Zeile 2 bzw. Spalte A ausgegeben. Reicht dir das?
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Werte der Diagonale kopieren
21.08.2013 12:55:34
Sebastian
Hallo Erich,
ich wollte die Diagonale kopieren und die Werte in einem neuen Tabellenblatt wieder in der Diagonale einfügen. Hat mit VBA von Boris (siehe andere Antwort) super geklappt.
Dir trotzdem auch vielen Dank für deine Antwort.
Gruß
Sebastian
Anzeige
Anzeige

Infobox / Tutorial

Diagonale Werte in Excel kopieren und einfügen


Schritt-für-Schritt-Anleitung

Um die Werte der Diagonale von E5 bis OY415 in ein neues Tabellenblatt zu kopieren, kannst Du die folgende VBA-Makro-Lösung verwenden:

  1. Öffne die Excel-Datei, in der Du die Werte kopieren möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Wähle im Menü Einfügen > Modul, um ein neues Modul zu erstellen.

  4. Füge den folgenden Code ein:

    Option Explicit
    Sub diagonal()
       Dim x As Long
       For x = 5 To 415
           Tabelle1.Cells(x, x).Copy Tabelle2.Cells(x, x)
       Next x
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus, indem Du auf Entwicklertools > Makros gehst und das diagonal Makro auswählst.

  7. Klicke auf Ausführen. Die Werte der Diagonale werden nun in das neue Tabellenblatt kopiert.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht oder gibt eine Fehlermeldung aus.

    • Lösung: Stelle sicher, dass die Blattnamen in Deinem Code korrekt sind. Wenn Dein Quellblatt nicht Tabelle1 heißt, passe den Namen entsprechend an.
  • Fehler: Es werden keine Werte kopiert.

    • Lösung: Überprüfe, ob die Zellen in der angegebenen Diagonale tatsächlich Werte enthalten.

Alternative Methoden

Wenn Du die Diagonalwerte ohne VBA kopieren möchtest, kannst Du auch die INDEX-Funktion verwenden. Damit kannst Du eine diagonal formel erstellen, um die Werte in einem neuen Bereich abzubilden:

  1. Gehe zu Zelle A4 im neuen Tabellenblatt.
  2. Füge die folgende Formel ein und ziehe sie nach unten:

    =INDEX(Tabelle1!$A$1:$OY$415;ZEILE(A4);ZEILE(A4))

Diese Formel sorgt dafür, dass die Werte der diagonale a4 und diagonale a5 korrekt angezeigt werden.


Praktische Beispiele

Hier sind einige Beispiele, wie Du die Diagonalwerte in einer Excel-Tabelle spiegeln kannst:

  • Beispiel 1: Wenn Du die Werte in der Diagonale von A4 bis A5 kopieren möchtest, kannst Du die oben genannte INDEX-Formel verwenden.
  • Beispiel 2: Um die Werte in einer neuen Zeile zu platzieren, kannst Du die TRANSPOSE-Funktion verwenden:

    =TRANSPOSE(INDEX(Tabelle1!$A$1:$OY$415;ZEILE(A4);ZEILE(A4)))

Tipps für Profis

  • Verwende die CTRL-Taste während des Kopierens, um die Werte schnell zu duplizieren, ohne die Formate zu übertragen.
  • Experimentiere mit Bedingte Formatierungen, um die Diagonalwerte in der diagonale hervorzuheben.
  • Du kannst auch den Namen Tabelle2 im VBA-Code anpassen, um die Ziel-Tabelle zu ändern.

FAQ: Häufige Fragen

1. Kann ich die Werte auch ohne VBA kopieren?
Ja, Du kannst die INDEX-Formel verwenden, um die Diagonalwerte zu kopieren und in einem neuen Bereich darzustellen.

2. Was passiert, wenn ich die Diagonale in einer anderen Excel-Version verwenden möchte?
Die meisten dieser Methoden funktionieren in Excel 2010 und neueren Versionen. Überprüfe die spezifischen Funktionen Deiner Excel-Version für mögliche Unterschiede.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige