Thema Datum  Von Nutzer Rating
Antwort
06.01.2024 15:47:45 Jacob
NotSolved
06.01.2024 18:46:34 ralf_b
NotSolved
Rot Zellenverschiebung in VBA Übernehmen
07.01.2024 18:52:08 Gast76217
NotSolved

Ansicht des Beitrags:
Von:
Gast76217
Datum:
07.01.2024 18:52:08
Views:
91
Rating: Antwort:
  Ja
Thema:
Zellenverschiebung in VBA Übernehmen

Zusätzlich zu dem was ralf_b bereits genannt hat, ...


Wenn es sich bei der Tabelle um einen Smart Table handelt:
(de: Intelligente Tabelle = formatierter Bereich mit STRG+T)

Dim tblSource As Excel.ListObject
Dim rngDataCell As Excel.Range

Set tblSource = Worksheet("Tabelle1").ListObjects("Table1")
' Wert in der ersten Datenzeile in der Spalte "Betrag"
Set rngDataCell = tblSource.DataBodyRange(1, tblSource.ListColumns("Betrag").Index)

' Verwendungsbeispiel:
rngDataCell.Value = ...

Den genauen Namen vom Smart Table findet man über das Menü in den Table Tools - ACHTUNG: Der Name vom Smart Table ist nicht zu verwechseln mit dem Namen des Tabellenblattes, auf dem sich der Smart Table befindet; ein Tabellenblatt kann mehrere Smart Tables beinhalten und die heißen dann alle unterschiedlich.

Damit der Reiter sichtbar ist, muss man den entsprechenden Smart Table ausgewählt haben - mindestens eine Zelle in dem Bereich.


Ansonsten kann man noch danach suchen:

Dim wksSource As Excel.Worksheet
Set wksSource = Worksheets("Tabelle1")
' suche in der ersten Zeile des Tabellenblattes nach der Zelle mit dem Inhalt "Betrag"
Set rngHeaderCell = wksSource.Rows(1).Find( _
        "Betrag", LookIn := xlValues, LookAt := xlWhole, SearchOrder := xlByRows, MatchCase := false)

' Verwendungsbeispiel:
' Dim rngDataCell As Excel.Range
' Set rngDataCell = wksSource.Cells(2, rngHeaderCell.Column)
' rngDataCell.Value = ...

' Wert in der ersten Datenzeile (= Zeile 2, anhand deines Beispiels) in der zuvor ermittelten Spalte
wksSource.Cells(2, rngHeaderCell.Column).Value = ...

Wie du siehst, ist diese Variante etwas komplizierter/unhandlicher als die mit einem Smart Table, weshalb generell dazu geraten wird Smart Tables zu verwenden. (allgemein haben die noch andere Vorteile)

 

Grüße

PS: Die Beispiele sind aus dem Gedächtnis geschrieben und ungetestet, d.h. keine Garantie das es sich kompilieren lässt. Außerdem müssen die Bezeichner - z.B. der Name des Tabellenblattes - entsprechend deiner Mappe angepasst werden.

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
06.01.2024 15:47:45 Jacob
NotSolved
06.01.2024 18:46:34 ralf_b
NotSolved
Rot Zellenverschiebung in VBA Übernehmen
07.01.2024 18:52:08 Gast76217
NotSolved