Toptorials Tutorials WeblogoLogobild kleinLogobild kleinToptorials Tutorials Weblogo
  • ALLE THEMEN IM ÜBERBLICK
  • YouTube
  • INFOS
    • SITEMAP
    • ÜBER TOPTORIALS
✕
            No results See all results

            Offset – Verschieben der aktuellen Position in VBA

            • Startseite
            • Tutorials Microsoft Office Excel Excel VBA
            • Offset – Verschieben der aktuellen Position in VBA

            Offset – Verschieben der aktuellen Position in VBA

            In diesem Tutorial zeige ich Euch wie Ihr Offset benutzen könnt um eine Verschiebung der aktuelle Position zu erreichen. Offset hat 2 Parameter. Der erste Parameter ist die Zeile, der zweite Parameter ist die Spalte. Je nachdem welche Zahl Ihr eintragt wird die Position genau um diesen Wert Zellenweise verschoben. Ihr könnt auch negative Werte eintragen. Allerdings müsst Ihr natürlich aufpassen dass Ihr immer über 1 bleibt weil der Compiler verständlicherweise sonst meckert. Denn Zeile oder Spalte 0 oder im Minusbereich gibt es bei Excel ja nicht 😉

            Das Startvideo der VBA Tutorial Serie auf YouTube findet Ihr hier

            Die Playlist meiner VBA Tutorial Serie auf YouTube findet Ihr hier

            Achtung:

            Benutzt zum Üben eine separate Tabelle für Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.

            Video zu diesem Tutorial:

             

            Offset in Excel VBA

            Um mit Offset die Position zu verschieben könnt Ihr Offset 2 Parameter übergeben, die mit einem Komma getrennt werden. Der erste Parameter ist die Zeilenanzahl und der zweite Parameter ist die Spaltenanzahl:

            Offset(ZeilenAnzahl, SpaltenAnzahl)

            Ihr könnt für die Zeilenanzahl oder Spaltenanzahl positive wie auch negative Werte eintragen. Allerdings ist es wichtig, dass Ihr bei negativen Werten darauf achtet, keine Zeilen oder Spalten anzusprechen die kleiner als 1 sind. Das heißt, wenn aktive Zelle zum Beispiel A1 ist, dann könnt Ihr weder eine negative Zeilenanzahl noch eine negative Spaltenanzahl eintragen. Falls Ihr das versucht bekommt Ihr einen Fehler:

            Laufzeitfehler 1004 bei zu hohen Offset

            Laufzeitfehler 1004 bei zu hohen Offset

            Beispielscript 1: Offset in Excel VBA

            In dem nachfolgenden Beispiel nehme ich bewusst erst einmal nur positive Werte für Offset. Ihr solltet beim Ausführen des Scripts die Schrittweise Auführung mit der Taste F8 vornehmen damit Ihr Schritt für Schritt die Sache verfolgen könnt. Denkt daran dass die Ausführung erst vor der gelben Markierung stattgefunden hat.

            Sub OffsetTutorial1()
            
              'Keine Positionsveränderung
              ActiveCell.Offset(0, 0).Value = "X"
            
              'Offset verändert die Position 1 Zeile nach unten
              ActiveCell.Offset(1, 0).Value = "X"
            
              'Offset verändert die Position 5 Zeilen nach unten
              ActiveCell.Offset(5, 0).Value = "X"
            
             'Offset verändert die Position 1 Spalte nach rechts
              ActiveCell.Offset(0, 1).Value = "X"
            
              'Offset verändert die Position 5 Spalten nach rechts
              ActiveCell.Offset(0, 5).Value = "X"
            
             'Offset verändert die Position 2 Zeilen nach unten und 4 Spalten nach rechts
              ActiveCell.Offset(2, 4).Value = "X"
            
            End Sub

            Beispielscript 1: Offset in Excel VBA

            Beim  folgenden Beispiel müsst Ihr darauf achten dass Eure aktive also markierte Zelle weiter rechts unten ist. Nehmt am Besten D4 damit der Compiler nicht meckert. Auch hier solltest Ihr mit der F8 Taste die Schrittweise Ausführung ablaufen lassen um die Sache besser verfolgen zu können.

            Sub OffsetTutorial2()
            
              'Keine Positionsveränderung
              ActiveCell.Offset(0, 0).Value = "X"
            
              'Offset verändert die Position 1 Zeile nach oben
              ActiveCell.Offset(-1, 0).Value = "X"
            
              'Offset verändert die Position 1 Spalte nach links
              ActiveCell.Offset(0, -1).Value = "X"
            
             'Offset verändert die Position 2 Zeilen nach oben und 2 Spalten nach links
              ActiveCell.Offset(-2, -2).Value = "X"
            
              'Offset verändert die Position 2 Zeilen nach unten und 2 Spalten nach rechts
              ActiveCell.Offset(2, 2).Value = "X"
            
             'Offset verändert die Position 2 Zeilen nach oben und 2 Spalten nach rechts
              ActiveCell.Offset(-2, 2).Value = "X"
            
             'Offset verändert die Position 2 Zeilen nach unten und 2 Spalten nach links
              ActiveCell.Offset(2, -2).Value = "X"
            
            End Sub

             

            Das könnte Dich auch interessieren

            • Auf Zellen zugreifen mit Cells in Excel VBA
            • Cells und Range kombiniert in Excel VBA
            • Eine eigene Funktion erstellen ganz einfach (Excel)
            • Entwicklertools anzeigen / Makro / VBA Visual Basic (Microsoft Word)
            • For Each Schleife in Excel VBA
            • For Next Schleife in Excel VBA
            • Gefüllte Zellen markieren mit und ohne Lücken in Excel VBA
            • Gültigkeitsbereich von Variablen in Excel VBA
            • Hello World mit Excel VBA programmieren

            Schreibe einen Kommentar Antwort abbrechen

            Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

            Mehr von mir über Excel

            • Übersichts-Liste der Microsoft Excel Tutorials
            • Tutorials über Microsoft Excel
            • Excel
            • Excel VBA
            • Alle meine Videos auf YouTube
            • Tutorial Wunsch Liste

            Neue Beiträge

            • Excel VBA Kurs – Teil 04: Dynamischen Bereich summieren & Nicht Zahlen markieren
            • Excel VBA Kurs – Teil 03: Zahlen in einem Bereich sicher summieren
            • Excel VBA Kurs – Teil 02: Zellen auslesen, addieren & Ergebnis schreiben
            • Excel VBA Kurs – Teil 01: Start mit Hello World – Modul, Makro, Option Explicit
            • Python in LibreOffice Calc: Formular auslesen und auswerten

            Neue Kommentare

            • Chris bei Eine eigene Funktion erstellen (OpenOffice Calc)
            • osman bei Eine eigene Funktion erstellen (OpenOffice Calc)
            • Erdmann bei Wochentag von einem Datum ausgeben (LibreOffice Calc)
            • Chris bei Tutorial Wunsch Liste
            • Sabine Kniffka bei Tutorial Wunsch Liste

            Schlagwörter – Wolke

            anfänger Anleitung anpassen ausrechnen auswahlliste Bedingte Formatierung berechnen Calc Datum Download Dropdownliste einfügen entfernen erstellen Excel FreeOffice Funktion google hinzufügen Jahresplan Kalender Lernvideo LibreOffice löschen Makro markieren Microsoft OpenOffice PlanMaker programmierung script spreadsheets Sverweis Tabelle tabellen Tutorial VBA Video Wenn Wenn Funktion Word wps spreadsheets Zeilen Zelle Zellen
            KONTAKT   IMPRESSUM    DATENSCHUTZERKLÄRUNG    HAFTUNGSAUSSCHLUSS (Disclaimer)   © copyright TOPTORIALS