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

Adressierung in Excel-Tabellen

Forumthread: Adressierung in Excel-Tabellen

Adressierung in Excel-Tabellen
06.05.2024 16:22:22
jay-jey
Hallo,

ich bekomme aus einem Programm immer einen Excel Export mit einigen Daten. Diese Tabelle muss ich nun in ein Datenblatt umbauen, also jede zeile ein eingens Blatt. Dies funktioniert auch einigermaßen gut. Wenn jedoch einer meiner Kollegen an der Vorlage rum spielt dann muss ich bis jetzt immer im Makro händisch wieder die richtigen Zeilen und Spalten eintragen. Weil z.B. Überschrift1 jetzt nicht mehr in Spalte 1 ist sondern in Spalte 5. Da sich aber die Überschriften in der Tabelle nicht ändern. Suche ich nach einem besseren Weg.

Ich dachte mir ich könnte das Arbeitsblatt ja zu einer Excel Tabelle machen und dann so weiter arbeiten. Hier ist ja auch beschrieben wie z.B. einfach Sortierungen erstelle
https://www.automateexcel.com/de/vba/vba-tabellen-und-listobjects/

 Range("Tabelle1[[#Headers],[Umsatz]]").Select 


Wie kann ich nun z.B. diese Schleife so umbauen, dass ich nicht immer händisch die Spalten anpassen muss wenn diese sich Verschieben.



For intZeile = 2 To OriginalBlatt.UsedRange.Rows.Count

ArbeitsBlatt.Cells(1, 2).Value = OriginalBlatt.Cells(intZeile, 3).Value

next i

Wie kann ich also die Adressierung der Zellen mit den Überschriften machen.
Irgendwie suche ich mir da grad nen Wolf in Google weil Tabelle und Excel irgendwie immer gleichwertig benutzt werden.
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Adressierung in Excel-Tabellen
06.05.2024 16:28:56
Yal
Hallo Jay,

ungefähr so:
Sub kopieren()

Dim LR As ListRow

For Each LR In Worksheets("Quelle").ListObjects("Tabelle1").ListRows
With Worksheets("Ziel").ListObjects("Tabelle2").ListRows.Add
.Value = LR.Value
End With
Next
End Sub
(ungetestet)

VG
Yal
Anzeige
AW: Adressierung in Excel-Tabellen
06.05.2024 16:45:24
Onur
"Wenn jedoch einer meiner Kollegen an der Vorlage rum spielt " ?
Warum schützt du die Vorlage nicht einfach gegen "Herumspielen" ?
AW: Adressierung in Excel-Tabellen
06.05.2024 18:17:10
daniel
Hi
du kannst an dein Range("Tabelle1[[#Headers],[Umsatz]]") noch ein .Cells() dranhängen, um per Schleife dann einzelne Zellen des Bereichs zu referenzieren.
dh Range("Tabelle1[[#Headers],[Umsatz]]").Cells(1, 1) ist die obere linke Zelle dieses Bereichs
Gruß Daniel
Anzeige
AW: Adressierung in Excel-Tabellen
06.05.2024 18:40:05
jay-jey
Danke das klappt jetzt.
AW: Adressierung in Excel-Tabellen
07.05.2024 11:03:22
jay-jey
So jetzt habe ich nur noch ein Problem mit dem ganzen. Ich hoffe ihr könnt mir dabei auch helfen. Ich habe in manchen Spalten eine Überschrift in dieser Form:

Einheit [s]

wenn ich dies nun in das Makro schreibe sieht das so aus:



Ziel_Einheit_s_ = Range("Quelle[[#Headers],[Einheit [s]]]").Cells(i, 1)


Das gibt mir aber einen Fehler wegen den drei Klammern hintereinander, jemand ne Idee wie ich das umgehen kann?

Anzeige
AW: Adressierung in Excel-Tabellen
07.05.2024 11:22:14
peter
Hallo



Ziel_Einheit_s_ = Range("Quelle[[#Headers],[Einheit '[s']]]").Cells(i, 1)


Peter
AW: Adressierung in Excel-Tabellen
07.05.2024 11:25:50
Yal
Hallo Jay,

wenn Du hier den ganzen Code posten würdest, könnten wir vielleicht eine stabile Lösung vorschlagen. Idealerweise sogar eine ganze Datei (bereinigt von allem, was nicht im Netz gehört).
Klar, wir können auch deine Basteleien von Problem zu Problem flicken. Du kommst aber damit nur sehr langsam voran.

VG
Yal
Anzeige
AW: Adressierung in Excel-Tabellen
07.05.2024 12:11:42
jay-jey
Naja ehr ungern weil beruflicher Kontext und eigentlich habe ich es jetzt auch schon. Würde wahrscheinlich mehr Arbeit machen alle Sachen aus dem Code zu entfernen die nicht ins Netz gehören als konkret bei einzelnen Problemen nachzufragen.

Danke nochmal an alle.
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige