Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Anfänger! Was bedeuten die folgenden Ausdrücke?

Forumthread: Anfänger! Was bedeuten die folgenden Ausdrücke?

Anfänger! Was bedeuten die folgenden Ausdrücke?
19.08.2002 10:32:36
Sebastian R.
Hallo,

mir wurde jetzt nun schon oft von Euch geholfen und ich habe Lust bekommen, selbst die Sprache zu lernen. Da es ja auf basic aufbaut, wird es wahrscheinlich leichter fallen als C/c++ oder anderes.

In einigen Scripten sind mir folgende Ausdrücke aufgefallen, die ich nicht interpretieren kann. Vielleicht kann mir mal einer sagen, was sie bezwecken.

- Application.ScreenUpdating = False/True

- Range("H1").Insert Shift:=xlToRight (was heißt xl?)

- Cells(x, 1) => wieso kann Cells = (3 , 1) sein wenn x=3. Bei Excel gibts doch nur A3, F3, AZ3... oder ist damit was anderes gemeint.

- PZ = [h65536].End(xlUp).Row <=was'n das?

- mit x=4 bei "Rows(x).Delete" lösche ich doch die 4.Zeile?!, wie lösche ich die 3.Spalte oder eine bestimmte Zelle? (vielleicht "Cols"(x).Delete")

Das war nur ein kleiner teil und ich habe noch so viele Fragen ...

Großes Dankeschön an alle, ihr seid echt super
Sebastian

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Anfänger! Was bedeuten die folgenden Ausdrücke?
19.08.2002 10:58:39
PEterA
Hallo Sebastian

Deine Fragen beantworte ich gerne. Aber das gleiche findest du auch mit F1 in der Excel VBA Hilfe. Schau da mal nach da ist manches ganz gut erklärt.
Ciao Peter


- Application.ScreenUpdating = False/True

XXXXX Die Bildschirmaktualisierung wird deaktiviert, was zur Folge hat, das wenn du in einem Makro verschiedene Blätter "ansteuerst" wird das nicht am Bildschirm nachvollzogen.
(Kein bildschirmflackern)


- Range("H1").Insert Shift:=xlToRight (was heißt xl?)
XXXXX xl ist eine Kennung für Excelfunktionen


- Cells(x, 1) => wieso kann Cells = (3 , 1) sein wenn x=3. Bei Excel gibts doch nur A3, F3, AZ3... oder ist damit was anderes gemeint.
XXXXX Nein da ist nichts anderes gemeint. Bei "Range" wird die Adressierung mit A1 B2 ... usw. angegeben. Bei Cells wird die Adressierung mit 1,1 = Zeile 1, Spalte 1, oder 5,19 Zeile 5, Spalte 19.


- PZ = [h65536].End(xlUp).Row <=was'n das?

XXXXXX Da wird auf die letzte beschriebene Zeile "gesprungen"

- mit x=4 bei "Rows(x).Delete" lösche ich doch die 4.Zeile?!, wie lösche ich die 3.Spalte oder eine bestimmte Zelle? (vielleicht "Cols"(x).Delete")

XXXXXX Columns(x).Delete

Anzeige
Re: Anfänger! Was bedeuten die folgenden Ausdrücke?
19.08.2002 11:01:31
ANdreas
Hallo Sebastion,

also zu den meisten Fragen wirst Du in Excel-Hilfe fündig werden.

1. Mit ScreenUpdating kannst Du Bildschirmaktualisierung an/aus schalten. Makros laufen meist schneller, wenn es auf false gesetzt ist. Besser ist es jedoch allgemein soweit es geht auf das Selecten zu verzichten!

2. Fügt eine Zelle ein und verschiebt die anderen nach rechts (xlToRight ist dabei eine XlInsertShiftDirection-Konstante)

3. Cells(x, 1) definiert eine Zelle mit angegebener Cells(Reihe, Spalte). x ist hierbei eine Variable. Hat x den Wert 3 so wird die Zelle A3 angegeben.
Cells(intRow, intCol) mit intRow = 5 und intCol = 2, liefert dann B5

4. Damit bestimmst Du die Zeile der untersten belegten Zelle in der Spalte. End(xlUp) ist dabei gleichzusetzen mit der Tastenkombination ENDE + NACH OBEN oder STRG + NACH OBEN

5. Columns(x).Delete

Kleiner Tipp: Schau Dir mal die xlBasics von Hans an...

Viel Spaß,
Andreas

Anzeige
Re: Anfänger! Was bedeuten die folgenden Ausdrücke?
19.08.2002 11:05:35
PeterW
Hallo Sebastian,

Application.ScreenUpdating = False/True
Bildschirmaktualisierung aus/ein

Range("H1").Insert Shift:=xlToRight (was heißt xl?)
xl Bedeutet, dass es sich um ein Element der Excel Bibiothek handelt

Cells(x, 1) => wieso kann Cells = (3 , 1) sein wenn x=3
Mit A3, B3 C3 etc. lassen sich keine Schleifen programmieren. Mit Cells(Zeile, Spalte) ist das kein Problem.

PZ = [h65536].End(xlUp).Row <=was'n das
Letzte benutzte Zeile eines Blattes in Spalte H finden.

wie lösche ich die 3.Spalte oder eine bestimmte Zelle? (vielleicht "Cols"(x).Delete")
Fast: Columns(3).Delete

Bei Excel 8 gibt es im Installationsverzeichnis, Unterverzeichnis Beispiele eine Datei namens Beispiele, in der die wesentlichen Strukturen erklärt sind. Vielleicht gibt es die bei Version 9 auch.

Gruß
Peter

Anzeige
Re: Anfänger! Was bedeuten die folgenden Ausdrücke?
19.08.2002 11:08:30
Sebastian R.
Vielen Dank, das hat mich eben aufgeklärt (im EDV-Sinne ;-)
;
Anzeige

Infobox / Tutorial

Excel VBA: Bedeutung wichtiger Befehle und deren Anwendung


Schritt-für-Schritt-Anleitung

  1. Bildschirmaktualisierung steuern:

    • Um die Bildschirmaktualisierung zu deaktivieren und somit die Ausführung von Makros zu beschleunigen, verwende:
      Application.ScreenUpdating = False
    • Setze es wieder auf True, wenn die Ausführung abgeschlossen ist.
  2. Zellen einfügen:

    • Um eine Zelle einzufügen und die anderen Zellen nach rechts zu verschieben, benutze:
      Range("H1").Insert Shift:=xlToRight
  3. Zellen ansprechen:

    • Verwende Cells(x, 1), um auf die Zelle in Zeile x und Spalte 1 (A) zuzugreifen. Beispiel:
      Cells(3, 1) ' Dies ist die Zelle A3
  4. Letzte benutzte Zeile finden:

    • Um die letzte benutzte Zeile in Spalte H zu finden, verwende:
      PZ = [H65536].End(xlUp).Row
  5. Zeilen und Spalten löschen:

    • Um eine bestimmte Zeile zu löschen, benutze:
      Rows(4).Delete ' Löscht die 4. Zeile
    • Um eine Spalte zu löschen, verwende:
      Columns(3).Delete ' Löscht die 3. Spalte

Häufige Fehler und Lösungen

  • Fehler: Object variable or With block variable not set

    • Lösung: Stelle sicher, dass alle Objekte korrekt initialisiert sind, bevor du darauf zugreifst.
  • Fehler: Subscript out of range

    • Lösung: Überprüfe, ob der angegebene Blattname oder die Zelladresse korrekt ist.
  • Problem mit selection.insert:

    • Stelle sicher, dass die richtige Auswahl getroffen wurde, bevor du selection.insert shift:=xlToRight oder ähnliche Befehle ausführst.

Alternative Methoden

  • Verwendung von Insert:

    • Anstelle von Range("H1").Insert Shift:=xlToRight, kannst du auch ActiveSheet.Cells verwenden:
      ActiveSheet.Cells(1, 8).Insert Shift:=xlToRight
  • Direktes Löschen:

    • Anstelle von selection.delete shift:=xlToLeft, kannst du auch direkt auf die Spalten zugreifen:
      Columns("B").Delete

Praktische Beispiele

  • Eine Zeile in einem VBA-Makro einfügen:

    Sub InsertRow()
      Rows(3).Insert Shift:=xlDown
    End Sub
  • Mehrere Zellen verschieben:

    Sub MoveCells()
      Range("A1:A5").Insert Shift:=xlToRight
    End Sub

Tipps für Profis

  • Vermeide Select und Activate:

    • Direkte Referenzen auf Zellen und Bereiche machen den Code schneller und weniger fehleranfällig.
  • Nutze Konstanten:

    • Verwende Konstanten wie xlToLeft und xlToRight, um den Code lesbarer und verständlicher zu gestalten.
  • Fehlerbehandlung einbauen:

    • Implementiere On Error Resume Next, um mögliche Laufzeitfehler zu ignorieren und den Code robuster zu machen.

FAQ: Häufige Fragen

1. Was bedeutet xl in Excel VBA?
xl steht für Excel und ist eine Kennung für verschiedene Excel-Funktionen und Konstanten, die in VBA verwendet werden.

2. Wie kann ich eine Zeile in Excel VBA einfügen?
Verwende den Befehl Rows(x).Insert Shift:=xlDown, um eine Zeile an der Position x einzufügen.

3. Wie finde ich die letzte benutzte Zeile in einer Spalte?
Nutze Cells(Rows.Count, 1).End(xlUp).Row, um die letzte benutzte Zeile in der ersten Spalte (A) zu ermitteln.

4. Was sind die häufigsten Fehler beim Arbeiten mit selection.insert?
Die häufigsten Fehler sind falsche Auswahl oder die Verwendung von nicht existierenden Referenzen. Überprüfe immer, ob die Auswahl korrekt ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige