Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: spalten ansprechen

spalten ansprechen
20.06.2003 10:44:53
Tom
Hi,

wie kann ich in vba spalten per zahlen ansprechen, also zB anstatt Range("B2") eben Range("2,2") ... oder so ähnlich eben ;)

Vielen Dank im Vorraus für eure Bemühungen einem excel-newbie zu helfen,

Gruß tom


Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: spalten ansprechen
20.06.2003 10:46:47
ChrisL

Hi Tom

columns(2)

Gruss
Chris

Re: spalten ansprechen
20.06.2003 10:58:24
Tom

Hi,

danke dir aber das hilft mir nicht weiter... ich möchte die spalten in einer schlefe nacheinander durchgehen, zB

FOR i = 1 TO 10

Range(i & "5").Select
ActiveCell.Formula = "test"

NEXT i

Gruß tom

Re: spalten ansprechen
20.06.2003 11:06:54
ChrisL

Versuchs mal hiermit...

Gruss
Chris

Anzeige
Re: spalten ansprechen
20.06.2003 11:12:40
Tom

ja aber spreche ich mit

>columns(i)

nicht alle zellen der spalte an? brauche ja nur eine zelle..

Re: spalten ansprechen
20.06.2003 11:21:29
ChrisL

Hi Tom

Sorry, glaub jetzt hab ichs...

z.B.
Spalte = 2
Cells(Spalte, 5)

d.h. Spalte 2, Zeile 5 = Range("B5")

Gruss
Chris



Re: spalten ansprechen
20.06.2003 11:44:15
Olli

Hallo Chris,

hast Du eine andere XL-Version als ich?

Bei mir kommt bei cells erst der rowindex, dann der climnindex...

Spalte =2
cells(5, 2) = B5

Oder?

Gruss
Olli

Anzeige
Re: spalten ansprechen
20.06.2003 11:49:51
ChrisL

Hi Olli

Vermutlich habe ich tatsächlich eine andere XL-Version... wer arbeitet heute schon noch mit XL 97 :-)

Aber hast natürlich recht... Cells(Zeile, Spalte) ist richtig.

cu
Chris

Re: spalten ansprechen
20.06.2003 12:15:51
Olli

Hi Chris
Na, dann ham mer´s ja jetzt. :-)

Gruss
Olli

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Spalten in Excel mit VBA ansprechen


Schritt-für-Schritt-Anleitung

Um in VBA eine bestimmte Spalte anzusprechen, kannst Du die Cells-Methode verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor in Excel mit ALT + F11.

  2. Füge ein neues Modul hinzu, indem Du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" auswählst.

  3. Schreibe den folgenden VBA-Code:

    Sub SpalteAnsprechen()
       Dim Spalte As Integer
       Dim i As Integer
    
       For i = 1 To 10
           Cells(5, i).Value = "Test " & i
       Next i
    End Sub
  4. Führe das Makro aus, um die Werte in der 5. Zeile der Spalten 1 bis 10 zu setzen.

Mit Cells(Zeile, Spalte) kannst Du gezielt eine Zelle ansprechen, ohne die gesamte Spalte auswählen zu müssen. Das ist besonders nützlich, wenn Du nur eine Zelle in einer bestimmten Spalte benötigst.


Häufige Fehler und Lösungen

  • Fehler: "Typ Mismatch" beim Arbeiten mit Cells.

    • Lösung: Stelle sicher, dass die Variablen als Integer deklariert sind. Zum Beispiel: Dim Spalte As Integer.
  • Fehler: "Subscript out of range" beim Festlegen von Werten.

    • Lösung: Überprüfe, ob der Zeilen- oder Spaltenindex innerhalb der zulässigen Grenzen liegt.

Alternative Methoden

Eine Alternative zur Verwendung von Cells ist die Range-Methode. Du kannst auch Range mit der Kombination von Buchstaben und Zahlen verwenden. Zum Beispiel:

Range("B5").Value = "Test"

Um die gesamte Spalte anzusprechen, kannst Du auch Columns verwenden:

Columns(2).Value = "Test"

Allerdings wird in diesem Fall die gesamte Spalte angesprochen, was möglicherweise nicht immer gewünscht ist.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du Spalten in VBA ansprechen kannst:

  1. Einzelne Zelle ansprechen:

    Cells(5, 2).Value = "Hallo"  ' Setzt den Wert in Zelle B5
  2. Schleife über mehrere Spalten:

    Dim i As Integer
    For i = 1 To 5
       Cells(1, i).Value = "Spalte " & i  ' Setzt Werte in die erste Zeile der ersten fünf Spalten
    Next i
  3. Die gesamte Spalte ansprechen:

    Columns(2).Font.Bold = True  ' Macht die Schriftart in der gesamten Spalte B fett

Tipps für Profis

  • Wenn Du mit großen Datenmengen arbeitest, ist es effizient, zu vermeiden, die gesamte Spalte anzusprechen, da dies die Performance beeinträchtigen kann.
  • Verwende Application.ScreenUpdating = False, um das Flackern des Bildschirms zu minimieren, während Du mehrere Änderungen an Zellen vornimmst:

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True

FAQ: Häufige Fragen

1. Wie spreche ich mehrere Zellen in einer Schleife an? Du kannst eine Schleife verwenden, um mehrere Zellen zu durchlaufen. Beispiel:

For i = 1 To 10
    Cells(i, 1).Value = "Test " & i  ' Setzt Werte in die erste Spalte von Zeile 1 bis 10
Next i

2. Wie adressiere ich Spalten per Zahl in VBA? Nutze Cells(Zeile, Spalte), um Zellen anzusprechen. Zum Beispiel: Cells(5, 2) für die Zelle B5.

3. Was ist der Unterschied zwischen Cells und Range? Cells verwendet numerische Indizes für Zeilen und Spalten, während Range Buchstaben und Zahlen verwendet, z.B. Range("B5").

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