Berechnungen →   ohne Beispiele   zurück zu VBA-Wissen.de 
Befehl / Beispiele Beschreibung
Workbooks(<Name>).Activate   66666z7gtrf
Workbooks(<Nr>).Activate
ThisWorkbook.Activate
ActiveWorbook.Activate
Mappe ansprechen
Beispiel:   
      Workbooks(1).Activate
Worbooks.Add Mappe erstellen
Beispiel:   
      Workbooks.Add
Workbooks.Count Anzahl geöffneter Mappen bestimmen.
Beispiel:   
      MsgBox Workbooks.Count    ' -->  Anzahl der geöffneten Mappen
Workbooks.Open <Filename>, , <Schreibschutz>, , <Passwort> Mappe offnen.
Beispiel:   
      Datei= "D:\Daten\Excel\Aufgaben.xls"
      Workbooks.Open Datei                      ' --> Mappe normal öffnen
      Workbooks.Open Datei, , True              ' --> Mappe schreibgeschützt öffnen
      Workbooks.Open Datei, , , , "1234"        ' --> Mappe mit Passwort "1234" öffnen
Workbooks(<Nr oder Name>).Save Mappe speichern.
Beispiel:   
      Workbooks("Aufgaben.xls").Save
Workbooks(<Nr>).SaveAs <Filename>, , <Passwort>, <Schreibpasswort> Mappe speichern als
Beispiel:   
      Datei = "D:\Daten\Excel\Aufgabe2.xls"
      Workbooks("Aufgaben.xls").SaveAs Datei ' --> bestehende Datei unter neuem Namen abspeichern
      Workbooks("Aufgaben.xls").SaveAs Datei, , "123", "123"  --> mit Passwörter
Workbooks(<Nr>).Close [<Änderungen speichern>] Mappe schließen
Beispiel:   
      Workbooks("Aufgaben.xls").Close         ' --> Mappe schließen
      Workbooks("Aufgaben.xls").Close False   ' --> Mappe schließen, Änderungen werden
                                              '     nicht gespeichert
ActiveWorkbook.BuiltinDocumentProperties(<Index>/<Name>) Excel-Eigenschaften listen.
Beispiele:   
      Sub MappenEigenschaftenLesen()
          Dim I     As Integer
          Dim Text  As String

          On Error Resume Next
          For I = 0 To 100
              Text = Text & I & vbTab & _
                     ActiveWorkbook.BuiltinDocumentProperties(I).Name & vbTab & vbTab & _
                     ActiveWorkbook.BuiltinDocumentProperties(I).Value & _
                     vbCr
          Next I

          MsgBox Text
      End Sub

      Sub AutorBestimmen()
          MsgBox "Der Autor der aktiven Mappe ist: " & _
                 ActiveWorkbook.BuiltinDocumentProperties("Author").Value
      End Sub
Application.ActiveWorkbook.ReadOnly Schreibschutz einer geöffneten Mappe prüfen
Beispiel:   
      Sub SchreibschutzPrüfen()
          MsgBox Application.ActiveWorkbook.ReadOnly   ' TRUE  = Mappe ist schreibgeschützt geöffnet
                                                       ' FALSE = Mappe ist nicht schreibgeschützt geöffnet
      End Sub
Tabelle1.Select
Sheets(<Nr>).Select
Sheets(<Name>).Select
Tabellenblatt auswählen
Beispiel:   
      Tabelle1.Select              ' Objekt 'Tabelle1' wird angewählt
      Sheets(1).Select             ' 1. Tabellenblatt-Registerkarte wird angewählt.
      Sheets("Tabelle1").Select    ' Tabellenblatt mit dem Namen 'Berechnungen' wird angewählt.
(Work)Sheets.Count Anzahl Tabellenblätter einer Mappe bestimmen
Beispiel:   
      MsgBox Worksheets.Count      ' --> Anzahl der Tabellenblätter
      MsgBox Sheets.Count          ' --> Anzahl aller Blätter ( Tabellen, Diagramme ... )
Sheets(<AlterName>).Name = <Neuer Name> Tabellenblatt umbenennen.
Beispiel:   
      Tabelle1.Name = "Berechnungen"
      Sheets("Berechnungen").Name = "Neue Berechnungen"
Sheets.Add <Vor>, <Nach>, <Anzahl>
<Vor>    = Vor welchem Tabellenblatt eingefügt wird ( Zahl )
<Nach>   = Vor welchem Tabellenblatt eingefügt wird ( Zahl )
<Anzahl> = Anzahl der Tabellenblätter, welche eingefügt werden.
Tabellenblatt links neben dem aktuellen Tabellenblatt einfügen.
Beispiel:   
      Sheets.Add                               ' Tabellenblatt links neben dem aktuellen Tabellenblatt einfügen.
      Sheets.Add After:=Sheets(Sheets.Count)   ' Tabellenblatt am Ende einfügen.
      Sheets.Add , Sheets(Sheets.Count)        ' Tabellenblatt am Ende einfügen.
Sheets(<Nr>).Move <Vor>, <Nach> Tabellenblatt umsortieren
Beispiel:   
      Sheets(3).Move Sheets(1)     ' Tabellenblatt 3 wird vor Tabellenblatt 1 verschoben.
      Sheets(3).Move , Sheets(1)   ' Tabellenblatt 3 wird nach Tabellenblatt 1 verschoben.
Sheets(<Nr>).Delete Tabellenblatt löschen
Beispiel:   
      Sheets(1).Delete             ' Tabellenblatt 1 wird gelöscht.
Sheets(<Nr>).Visible Tabellenblatt sichtbar / unsichtbar
Beispiel:   
      Sheets(1).Visible = xlSheetVisible       ' Tabellenblatt 1 sichtbar schalten
      Sheets(1).Visible = xlSheetHidden        ' Tabellenblatt 1 unsichtbar schalten
      Sheets(1).Visible = xlSheetVeryHidden    ' Tabellenblatt 1 ganz unsichtbar schalten
                                               ' ( kann über Excel-Einstellungen nicht sichtbar gestaltet werden. )
<Variable>= Cells(<Zeile>,<Spalte>)
<Variable>= Range(<Zell-Adresse>) oder [<Zell-Adresse>]
Lesen aus einer Zelle
Beispiel:   
      A = Cells(12, 3)   ' --> Inhalt der Zelle C12 in die Variable 'A' einlesen.
      A = Range("C12")   ' --> Inhalt der Zelle C12 in die Variable 'A' einlesen.
      A = [C12]          ' --> Inhalt der Zelle C12 in die Variable 'A' einlesen.
Cells(<Zeile>,<Spalte>) = <Variable> oder <Wert>
Range(<Zell-Adresse>)   = <Variable> oder <Wert>
Schreiben in eine Zelle
Beispiel:   
     Cells(4,3) = A      ' Inhalt der Variable 'A' in Zelle C4 schreiben
     Range("C4") = 12    ' Zahl 12 in Zelle C4 schreiben.
     [C4] = "Hallo"      ' Den Text "Hallo" in Zelle C4 schreiben
<Feld-Variable> = Range(<Bereich>) Lesen aus einem Bereich
Beispiel:   
     Dim DatenFeld As Variant
     DatenFeld = Range("A1:J10")
Range(<Bereich>) = <Feld-Variable> Schreiben in einen Bereich
Beispiel:    Ausgabe einer Zufallstabelle
      Dim AzSpalten  As Integer
      Dim AzZeilen   As Integer
      Dim Spalte     As Integer
      Dim Zeile      As Integer

      AzSpalten = 10
      AzZeilen = 10
      ReDim DatenFeld(1 To AzZeilen, 1 To AzSpalten)  As Double

      For Zeile = 1 To AzZeilen
          For Spalte = 1 To AzZeilen
              DatenFeld(Zeile, Spalte) = Rnd * 1000
          Next Spalte
      Next Zeile

      Cells.ClearContents

      Range("C3").Range(Cells(LBound(DatenFeld, 1), LBound(DatenFeld, 2)), _
                        Cells(UBound(DatenFeld, 1), UBound(DatenFeld, 2))) = DatenFeld
Cells.SpecialCells(xlLastCell).Address Adresse der 'Letzen Zelle' bestimmen
Beispiel:   
      MsgBox Cells.SpecialCells(xlLastCell).Address
Cells.SpecialCells(xlLastCell).Row Zeilen-Nummer der letzten Zeile
Beispiel:   
      MsgBox Cells.SpecialCells(xlLastCell).Row
Cells.SpecialCells(xlLastCell).Column      Spalten-Nummer der letzen Spalte
Beispiel:   
      MsgBox Cells.SpecialCells(xlLastCell).Column
.NumberFormat = <Format> Zellenformat Zahlen
Beispiel:   
      Range("A1").NumberFormat = "General"      ' --> Standard-Format
      Range("A2").NumberFormat = "#,##0.00"     ' --> 2. Dezimalstellen mit Tausender-Trennung
      Range("A3").NumberFormat = "DD.MM.YYYY"   ' --> Datumsformat
      Range("A4").NumberFormat = "hh:mm:ss"     ' --> Stundenformat
      Cells(4, 1).NumberFormat = "??/??"        ' --> 2-stelliges Bruch-Format

.HorizontalAlignment = xlCenter
.MergeCells = <True / False>
.Orientation = <Winkel>
.VerticalAlignment = xlCenter
.WrapText = True
Zellenformate Ausrichtung:
Horizontale Ausrichtung des Zellinhaltes
Zellen des Bereiches verbinden
Schreibwinkel des Zellinhaltes ( in Altgrad )
Vertikale Ausrichtung
Textumbruch
Beispiel: 
      With Range("C3:G3")                  ' Alle Zellen im Bereich C3 bis G3
          .HorizontalAlignment = xlCenter  ' Inhalt horizontal zentriert ausgerichtet.
          .MergeCells = True               ' Zellen werden zu einer Zelle verbunden
          .Orientation = 45                ' Schreib-Richtung 45°
          .VerticalAlignment = xlCenter    ' Inhalt vertikal zentriert ausgerichtet.
          .WrapText = True                 ' Zeilenumbruch aktiviert.
      End With

.Font.Name = <Schriftname>
.Font.Size = <Schriftgröße>
.Font.Strikethrough = <False / True>
.Font.Superscript = <False / True>
.Font.Subscript = <False / True>
.Font.Underline = <Typ>
.Font.ColorIndex = <Farbindex-Nummer>
.Font.Bold = <False / True>
.Font.Italic = <False / True>
Schrift des Zell / Bereichs-Inhaltes
Schriftname
Schriftgröße
durchgestrichen
hoch gestellt
unterstrichen
Schriftfarbe
Fett
Kursiv
Beispiel: 
      With Range ("F20")
           .Font.Name = "Britannic Bold"                       ' Schriftname
           .Font.Size = 11                                     ' Schriftgröße
           .Font.Strikethrough = False                         ' nicht durchgestrichen
           .Font.Superscript = False                           ' nicht hochgestellt
           .Font.Subscript = False                             ' nicht tief gestellt
           .Font.Underline = xlUnderlineStyleNone              ' nicht unterstrichen  
                             xlUnderlineStyleSingle            ' einfach unterstrichen
                             xlUnderlineStyleDouble            ' doppelt unterstrichen
                             xlUnderlineStyleSingleAccounting  ' einfach fett unterstrichen
                             xlUnderlineStyleDoubleAccounting  ' doppelt fett unterstrichen
           .Font.ColorIndex = 1                                ' Farb-Index 1 ( schwarz )
           .Font.Bold = True                                   ' Fett-Schrift
           .Font.Italic = False                                ' nicht kursiv
      End With
<Zelle / Bereich>
.Borders(<RahmenTyp>) 
         <Rahmentyp> = xlDiagonalDown      5
                       xlDiagonalUp        6
                       xlEdgeLeft          7
                       xlEdgeTop           8
                       xlEdgeBottom        9
                       xlEdgeRight        10
                       xlInsideVertical   11
                       xlInsideHorizontal 12
.Borders(<RahmenTyp>)
.LineStyle =           xlContinuous        1
                       xlDash          -4115
                       xlDashDot           4
                       xlDashDotDot        5
                       xlDot           -4118
                       xlDouble        -4119
                       xlNone          -4142
.Borders(<RahmenTyp>)
.Weight                xlHairline          1
                       xlThin              2
                       xlMedium        -4138
                       xlThick             4
.Borders(<RahmenTyp>)
.ColorIndex          = 1 - 56
Rahmen

Diagonal
Diagonal
Linker Rand
Oberer Rand
Rechter Rand
Alle inneren vertikalen Linien der markierten Tabelle
Alle inneren waagerechten Linien der markierten Tabelle

Durchgehende Linie
Gestrichelte Linie
Strich-Punkt- Linie
Strich-Punkt-Punkt-Linie
Punktierte Linie
Doppelte Linie
Keine Linie

Linienstärke Haarfein
Dünn
Normal
Dick

Farb-Index
Beispiel:   
Sub BereichRahmung(Bereich)
'+---------------------------+
'|  Rahmung eines Bereiches  |
'+---------------------------+
   Dim TabLinie As Integer

   For TabLinie = 7 To 12
       Range(Bereich).Borders(TabLinie).LineStyle = xlContinuous
       Range(Bereich).Borders(TabLinie).Weight = xlMedium
   Next TabLinie
End Sub
Cells.ClearContents Zellinhalte des gesamtes Tabellenblattes löschen
Beispiel:   
      Cells.ClearContents
Cells.Delete Gesamtes Tabellenblatt löschen
Beispiel:    Das gesamte Tabellenblatt wird gelöscht, d.h. Inhalte und Formate.
      Cells.Delete
Rows(<Zeile>).Select
Rows("<von Zeile>:<bis Zeile>").Select
Zeile(n) auswählen
Beispiel:
      Rows(25).Select         ' Zeile 25 wird markiert
      Rows("2:10").Select     ' Die Zeilen 2 bis 10 werden markiert 
Rows(<Zeile>).Insert neue Zeile(n) einfügen
Beispiel:
      Rows(20).Insert         ' In Zeile 20 wird eine neue Zeile eingefügt.
      Rows("5:9").Insert      ' in Zeile 5 werden 5 neue Zeilen eingefügt.
Rows(<Zeilen>).Copy Destination Zeile kopieren und woanders überschreiben
Beispiel:
      Rows("8:10").Copy Destination:=Rows("43:45")
Rows(<Zeile>).Cut Destination Zeileninhalt löschen und woanders überschreiben
Beispiel:
      Rows(5).Cut Destination:=Rows(30)              ' der Inhalt von Zeile 5 wird in Zeile 30
                                                     ' kopiert und in Zeile 5 gelöscht
      Rows("5:10").Cut Destination:=Rows("15:20")    ' Der Inhalt der Zeilen 5-10 wird in die
                                                     ' Zeilen 15-20 kopiert,
                                                     ' Zeilen 5-10 werden dann gelöscht.
Rows(<Zeilen>).Cut / Rows(<Zeilen>).Insert Zeile löschen und woanders einfügen
Beispiel:
      Rows("5:5").Cut                ' Zeile 5 wird gelöscht
      Rows("20:20").Insert           ' und in Zeile 20 eingefügt
Rows(<Zeilen>).Copy Destination Zeile kopieren und woanders überschreiben
Beispiel:
      Rows(20).Copy Destination:=Rows("23:23")
Rows(<Zeilen>).Copy / Rows(<Zeilen>).Insert Zeile kopieren und woanders einfügen
Beispiel:
      Rows(10).Copy
      Rows(21).Insert Shift:=xlDown
      Application.CutCopyMode = False
Rows(<Zeilen>).Delete Zeile löschen
Beispiel:
      Rows(19).Delete         ' Zeile 19 wird gelöscht
      Rows("5:9").Delete      ' Zeilen 5 bis 9 werden gelöscht
Rows(<Zeilen>).EntireRow.Hidden Zeile ausblenden / einblenden
Beispiel:
      Rows("14:14").EntireRow.Hidden = True
Rows(<Zeilen>).RowHeight Zeilenhöhe
Beispiel:
      Rows("8:8").RowHeight = 33.75
Rows(<Zeilen>).EntireRow.AutoFit automatische Zeilenhöhe
Beispiel:
      Rows("8:8").EntireRow.AutoFit
Cells.SpecialCells(xlLastCell).Row Zeilen-Nummer der letzten Zeile
Beispiel:   
      MsgBox Cells.SpecialCells(xlLastCell).Row
Columns(<Bereich> oder <Index>).Select Spalte auswählen
Beispiel:
      Columns("G:I").Select
      Columns("A").Select
      Columns(13).Select
Columns(<Spalte>).Insert neue Spalte einfügen
Beispiel:
 
     Columns(8).Insert Shift:=xlToRight
Columns("E:E").Copy Destination Spalte kopieren und woanders überschreiben
Beispiel:
      Columns("E:E").Copy Destination:=Columns("I:I")
Columns(<Spalte>).Cut Destination:=Columns(<Spalte>) Spaltinhalt  löschen und woanders überschreiben
Beispiel:
      Columns(4).Cut Destination:=Columns(10)
Columns(<Spalte>).Cut / Columns(<Spalte>).Insert Spalte löschen und woanders einfügen
Beispiel:
      Columns(2).Cut      ' Spalte 2 ausschneiden
      Columns(7).Insert   ' und vor Spalte 7 einfügen
Columns(<Spalte>).Copy Destination:=Columns(<Spalte>) Spalte kopieren und woanders überschreiben
Beispiel:
      Columns(2).Copy Destination:=Columns(6)
Columns(<Spalte>).Copy  /  Columns(<Spalte>).Insert Spalte kopieren und woanders einfügen
Beispiel:
      Columns(2).Copy
      Columns(5).Insert
      Application.CutCopyMode = False
Columns(<Spalte>).Delete Spalten löschen
Beispiel:
      Columns(3).Delete
Columns(<Spalte>).EntireColumn.Hidden = True / False Spalten ausblenden / einblenden
Beispiel:
      Columns(3).EntireColumn.Hidden = True
Columns(<Spalte>).ColumnWidth = <Spaltbreite> Spaltenbreite
Beispiel:
      Columns(1).ColumnWidth = 15
Columns(<Spalte>).EntireColumn.AutoFit automatische Spaltenbreite
Beispiel:
      Columns(3).EntireColumn.AutoFit
Cells.SpecialCells(xlLastCell).Column      Spalten-Nummer der letzen Spalte
Beispiel:   
      MsgBox Cells.SpecialCells(xlLastCell).Column