Herbers Excel-Forum - das Archiv

VBA-Hilfe

Bild

Betrifft: VBA-Hilfe
von: Jochen

Geschrieben am: 28.12.2006 22:49:14
Liebe VBA-Profis,
ich will grade VBA lernen. Im Lehrbuch steht folgender Code:
For i = 1 To ActiveSheet.UsedRange.Rows.Count
Wo kann ich die Syntax dieses Befehles ab ActiveSheet nachlesen? Ich finde nicht mal was in der Excel-Hilfe?! Wie kennt man sonst Rows und Count?
Vielen Dank für Eure Hilfe
Jochen
Bild

Betrifft: AW: VBA-Hilfe
von: th.heinrich
Geschrieben am: 28.12.2006 22:55:37
hallo Jochen,
viel spass beim lernen :-) ich habs bei vba aufgegeben.
setz im VBA-Editor den cursor auf einen begriff, mit F1 popt die hilfe auf.
gruss thomas
Bild

Betrifft: AW: VBA-Hilfe
von: Jochen
Geschrieben am: 28.12.2006 22:59:06
Hallo Thomas,
habe ich ja gemacht, aber da kommt nix von Rows und Count!
Gruß Jochen
Bild

Betrifft: AW: VBA-Hilfe
von: Kurt
Geschrieben am: 28.12.2006 23:03:21
Hi,
Objektkatalog(F2 drücken) Begriff eingeben und aufsFernglas klicken.
mfg Kurt
Bild

Betrifft: AW: VBA-Hilfe
von: Jochen
Geschrieben am: 28.12.2006 23:14:06
Hallo Kurt,
habe ich grad ausprobiert, aber weider nix von Rows und Count.
Mann muss doch irgendwie auf die Syntax kommen?
Gruß Jochen
Bild

Betrifft: AW: VBA-Hilfe
von: th.heinrich

Geschrieben am: 28.12.2006 23:08:59
hi Jochen,
F1 zu Rows findet diese beispiele
Beispiel zur Rows-Eigenschaft
In diesem Beispiel wird die dritte Zeile in Tabelle1 gelöscht.
Worksheets("Tabelle1").Rows(3).Delete
In diesem Beispiel werden Zeilen im aktuellen Bereich in Tabellenblatt 1 gelöscht, deren erste Zelle jeweils den gleichen Wert hat, wie die erste Zelle der vorherigen Zeile.
For Each rw In Worksheets(1).Cells(1, 1).CurrentRegion.Rows
diese = rw.Cells(1, 1).Value
If diese = letzte Then rw.Delete
letzte = diese
Next
In diesem Beispiel wird die Anzahl der Zeilen in der Markierung in Tabelle1 angezeigt. Liegt eine Mehrfachmarkierung vor, werden alle Teile der Mehrfachmarkierung in einer Schleife bearbeitet.
Worksheets("Tabelle1").Activate
flächenAnzahl = Selection.Areas.Count
If flächenAnzahl <= 1 Then
MsgBox "Die Markierung enthält " & _
Selection.Rows.Count & " Zeilen."
Else
i = 1
For Each a In Selection.Areas
MsgBox "Teil " & i & " der Markierung enthält " & _
a.Rows.Count & " Zeilen."
i = i + 1
Next a
End If
gruss thomas
Bild

Betrifft: AW: VBA-Hilfe
von: ingUR

Geschrieben am: 28.12.2006 23:51:21
Hallo, Jochen,
es ist m.E. empfehlesnwert, dass Du Dich mit Objekten, Eigenschaften und Methoden beschäftigst, um gezielt den Weg zur Aufschlüsselung eines derartigen Befehls ergründen zu können.
Mit ActiveSheet wird ein Worksheet-Objekt angesprochen, das über objekteigene Funktionen (Methoden) verfügt und sich durch bestimmte Eigenschaftswerte von anderen Objekten gleichen Typs unterscheidet. Objekte können u.a. auch auf Ereignisse reagieren.
Hile::Antwortassistent: Worksheet-Objekt
Eine Eigenschaft des Objekts Worksheet ist es, ein Objekt UsedRange zu verwalten, das auf einen bestimmten Bereich (Range) dieser Arbeitsmappe verweist.
Hile::Antwortassistent: UsedRange
Die Eigenschaft Rows ist sowohl für das Objekt Worksheet (Aufruf: ActiveSheet.Rows als auch für das Objekt UsedRange ( Aufruf: ActiveSheet.UsedRange.Rows) und stellt selbt wieder ein Unterobjekt da, nämlich die "Verwaltung der Zeilen" entweder im aktiven Tabellenblatt oder aber in UsedRange des aktiven Tabellenblatts.
Hilfe::Antwortassistent::Eingabe: Rows-Eigenschaften
Count ist hier nun eine Eigenschaft des Objekts Rows und liefert den Wert für die Anzahl der Zeilen (hier) innerhalb des "aufrufenden" Objekt.
Hilfe::Antwortassistent::Eingabe: Count-Eigenschaften
Es ist also so, dass die es duraus möglich ist, Eigenschaften an verschiedene und/oder mehrere Objekte mit unterschiedlicher Wirkung zu koppeln.
Gruß,
Uwe
Bild

Betrifft: AW: VBA-Hilfe
von: Jochen

Geschrieben am: 29.12.2006 08:32:27
Hallo Uwe,
vielen Dank für die sachkundige Erläuterung! Hat mir sehr geholfen.
Gibt es aber keine Auflistung der Eigenschaften, die für ein Objekt zur Verfügung stehen?!
Für Rows habe ich auch select gefunden, aber leider keine vollständige auflistung aller Möglichkeiten. Das wäre natürlich optimal!
Viele Grüße Jochen
Bild

Betrifft: AW: VBA-Hilfe
von: Gerd
Geschrieben am: 29.12.2006 10:44:41
Hi,
siehe Bild:
Userbild
mfg Gerd
Bild

Betrifft: AW: VBA-Hilfe
von: ingUR

Geschrieben am: 29.12.2006 11:34:43
Hallo, Jochen,
es freut mich, dass Dir meine Erklärung weitergeholfen hat, obwohl ich mir bewußt bin, dass ich allenfalls nur einen kleinen Zipfel der Deke über den Antworten zu Deinen Frage angehoben habe.
So erwähnst Du z.B. Select, dass Du im Zusammenhang mit Rows gefunden hast. Select ist hier eine Methode, die bestimmte Elemente von Rows auswählt, selektiert:
Hilfe::Antwortassistent: Select-Methode
Jochen, wenn Du die Möglichkeit hast, dann versuche Literatur zu Excel-VBA aufzuspüren, die Dir genau die Elemente Objekte, Methoden, Eigenschaften und Ereignisse darstellen, denn in der EXCEL-Hilfe kannst Du, neben der von Kurt vorgestellten Möglichkeiten des Objektkatalogs, der jedoch eine Basisvorstellung über Objekte und Klassen voraussetzt, gen m.W. u.a. nur über die Beispiele in den Antworten (einschließlich der Antwortbäume) zu
Hilfe::Antwortassistent: Microsoft Excel-Objekte
Hilfe::Antwortassistent: Objekte, Eigenschaften, Methoden und Ereignisse
die Verkettungen und Verknüfungen mühsam erfahren. Es gibt zwar Literatur, die technische Referenz zu EXCEL-VBA abgedruckt haben (u.a. zur EXCEL Version 7: Mircrosoft EXCEL, Visual Basic Sprachverzeichnis; Microsoft Press - alo nicht aktuell), ob diese jedoch auch im Internet aktuell zur Verfügung steht, muß erkundet werden.
Gruß,
Uwe
 Bild