Makro: Reihe und Spalten direkt ausgeben

  • #1
B

Billy

Guest
halli hallöchen

ich bins mal wider mit ner kleinen frage

ich müsste wissen ob es geht volgenden Befehl irgend wie schneller zu machen:

Code:
Bereich = anfang_spalte & anfang_zeile & : & ende_spalte & ende_zeile
rows = 0
For Each Zelle In ws.Range(Bereich)
 rows = rows + 1
Next
temp_berreich = anfang_spalte & 1: & ende_spalte & 1
'und hier die Spalten
columns = 0
For Each Zelle In ws.Range(temp_berreich)
 columns = columns + 1
Next

also ich hab nen Bereich von dem Zähl ich zuerst die Reihen(rows) und dann unterhalb Zähl ich die Spalten(columns)

jetzt merk ich aber dass das dings ziemlich komplex ist.. und ich wollte fragen ob das net irgend wie eifacher geht...

mfg Billy / FiRe-X
 
  • #2
Hi billy,

geht einfach  ;)

Code:
Sub Bereich_AnzahlZeilenUndSpaltenBestimmen()
  
  Dim Bereich As Range, ws As Worksheet
  Dim l_rows As Long, l_columns As Long
  
  Set ws = ActiveSheet
 ->## hier z.B.

  Set Bereich = ws.Range(A2:D31)
  
 ->Anzahl Spalten des Bereiches
  l_columns = Bereich.Columns.Count
  
 ->Anzahl Zeilen des Bereiches
  l_rows = Bereich.Rows.Count
  
 ->Aufraeumen
  Set ws = Nothing
  Set Bereich = Nothing
End Sub

Wenn Du die Variablen immer schön mit->Dim' deklarierst, dann hilft dir der VB-Editor auch beim Makro-Schreiben.

Ist dem Makro klar, welches Objekt/Art von Variable er vor sich hat, zeigt der dir die Eigenschaften an, wenn Du im Makro die Variable schreibst und ohne Leerzeichen einen Punkt dahinter machst.

Als Beispiel für den Makro oben:
Tip mal nach der Zeile->->## hier z.B.' ein ws.   ein. Dann müßtest Du diese Funtionalität erkennen.

Gruß Matjes :)

ps: klexy mag->Dim' nicht  :'(
 
Thema:

Makro: Reihe und Spalten direkt ausgeben

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben