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.

VBA Zeilen verschieben IN intelligente Tabelle
#11
Hallo,
ich habe die Infos von snb soweit verstanden und betrachte sie auch als eine sinnvolle Lösung. Dennoch verstehe ich nicht warum der Code von Ralf in meiner anderen Exceltabelle nicht funktioniert.

       

Die Tabellennamen stimmen. Aber wo ist dann der Fehler?
Zudem ist es merkwürdig das der Code in der Beispieltabelle funktioniert, owohl der Bezug Tabelle2 nicht korrekt ist. Dort müsste eigentlich Tabelle3 stehen. Huh

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top
#12
Moin noch einmal!
Ich bin einfach mal davon ausgegangen, dass Dir der Unterschied zwischen Worksheets("Tabelle1").irgendwas und Tabelle1.irgendwas bekannt ist.
Falls nicht, mal einer meiner wenigen Textbausteine:

Ein Tabellenblatt kannst Du in plain Excel nur mit dem Namen, der auf dem "Tabellenreiter" steht ansprechen!
Bei VBA gibt es drei Möglichkeiten:
  1. Die .Name-Eigenschaft: Sheets("Feiertage").Range("A1") [steht in der Klammer]
  2. Den .CodeName: Tabelle2.Range("A1") [vor dem Punkt]
  3. Den Index (lfd. Nr. des Sheets, von links mit 1 beginnend) Worksheets(2).Range("A1")
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • StefanB
Antworten Top
#13
Danke Ralf!! Ich hab´s nun.
Code:
Sub CommandButtonAblegen_Click()
If Not Intersect(Worksheets("Projekte").ListObjects(1).DataBodyRange, ActiveCell) Is Nothing Then
  With Worksheets("Archiv").ListObjects(1)
    .ListRows.Add , True
    Worksheets("Projekte").Cells(ActiveCell.Row, 3).Resize(1, 122).Copy .DataBodyRange(.ListRows.Count, 1)
    Selection.Delete Shift:=xlUp
  End With
End If
End Sub

Tatsächlich hatte ich in diese Richtung auch schon mein Glück versucht, bin aber immer kläglich gescheitert.
Nice WE!
18

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top


Gehe zu:


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