Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

In VBA: cells(An:Hn)

In VBA: cells(An:Hn)
03.04.2006 12:12:24
Fab
Hallo zusammen,
ich möchte in einer Schleife einen Bereich selektieren, der dann mit jedem neuen durchlauf eine Zeile weiter geht.
dim n as integer
dim i as integer
for n = 1 to 20
for i = 1 to 20
if sheets("Daten").cells(n,1) = sheets("Stadien").Range(A3) then
Cells(1i:8i).select
...
end if
das .Range(A3) sollte eigentlich auch eher Range(A3-A20) lauten
was mache ich falsch?
(VBA Anfänger, bisher nur mittels diesen Forums und google :P)
Hoffe auf Hilfe :)
Gruß
fab

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: In VBA: cells(An:Hn)
03.04.2006 12:52:00
Sylvio
Hallo Fab,
du haust da ein bisschen was durcheinander mit Cells und Range
i= 1
j= 1
um ein Range aus Cells zu schreiben musst du Range(Cells(i,j),Cells(i+20,j)) zum Beispiel definieren.
Gruß Sylvio
AW: In VBA: cells(An:Hn)
03.04.2006 13:56:58
Jan3
Hi,
Verändre Deinen Code bei der If-Then-Anweisung ab!

Sub schleife()
Dim n As Integer
Dim i As Integer
For n = 1 To 20
For i = 1 To 20
If Sheets("Daten").Cells(n, 1) = Sheets("Stadien").Cells(i, 1) Then
'Dein Code, wenn die Bedingung erfüllt ist!
End If
Next i
Next n
End Sub

Jan
AW: In VBA: cells(An:Hn)
03.04.2006 14:30:43
Fab
Hmm, ich mach da wohl ne ganze Menge falsch...

Sub Prozente()
dim n as integer
dim i as integer
const x as integer
const y as integer
x=1
y=1
for n = 9 to 30
for i = 3 to 26
if sheets("daten").cells(n,1) = Sheets("Stadien").range(cells(i,1) then
range(cells(n,2),cells(n,7).select
selection.style = "percent"
else
selection.style = "comma"
end if
next n
next i
End Sub

wo baue ich da jetzt x,y ein?
Zu verändernde Zahlen sind in B9 bis H9 (und dann runter bis B30-H30)
Zu überprüfender Wert ist in A9-A30 auf "Daten"
Die Prozentzahlen stehen im Bereich A20-A26
Bin verwirrt, aber dankbar für jede Hilfe... vielleicht bin ich etwas zu schnell für mein Können...
Anzeige
AW: In VBA: cells(An:Hn)
03.04.2006 14:55:21
Sylvio
Hallo Fab,
du brauchst doch die Variablen gar nicht als weg damit:
const x as integer
const y as integer
x=1
y=1
Die schaffen nur Verwirrung :-). Hier muss ein Nest von Verwirrung sein. *g*
Gruß Sylvio
AW: In VBA: cells(An:Hn)
03.04.2006 15:06:56
Fab
Ich hab die jetzt raus geschmissen, komme aber trotzdem nicht weiter.
In der Zeile mit dem if wird mir ein Anwendungs oder obejekt definierter fehler angezeigt...
Gruß
AW: In VBA: cells(An:Hn)
03.04.2006 15:17:22
Sylvio
Hallo Fab,
du solltest ihm genau sagen wo sich die Zellen und Ranges befinden (PC= doof) :-)

Sub Prozente()
Dim n As Integer
Dim i As Integer
For n = 9 To 30
For i = 3 To 26
If ThisWorkbook.Sheets("daten").Cells(n, 1).Value = _
ThisWorkbook.Sheets("Stadien").Cells(i, 1) Then
ThisWorkbook.Sheets("daten").Select
Range(Cells(n, 1), Cells(n, 7)).Select
Selection.Style = "percent"
Else
Selection.Style = "comma"
End If
Next
Next
End Sub

Gruß Sylvio
Anzeige
AW: In VBA: cells(An:Hn)
03.04.2006 15:49:59
Fab
Das klappt, danke :)
jetzt gibt es aber noch ein weiteres Problem...das Makro durchläuft nun alle Zeilen und bleibt bei der letzten stehen. Kann man irgendeine Prozedur einbauen, mit der gestoppt wird, sobald eine Zeile leer ist oder mit der man an den Anfang des Sheets zurückspringen kann?
Danke für Deine Hilfe :)
AW: In VBA: cells(An:Hn)
03.04.2006 15:55:06
Sylvio
Klar geht alles: (PC = bleibt trotzdem doof) :-)

Sub Prozente()
Dim n As Integer
Dim i As Integer
For n = 9 To 30
For i = 3 To 26
If ThisWorkbook.Sheets("Daten").Cells(n, 1).Value = "" Then
ThisWorkbook.Sheets("Daten").Cells(1, 1).Select
Exit Sub
End If
If ThisWorkbook.Sheets("daten").Cells(n, 1).Value = _
ThisWorkbook.Sheets("Stadien").Cells(i, 1) Then
ThisWorkbook.Sheets("daten").Select
Range(Cells(n, 1), Cells(n, 7)).Select
Selection.Style = "percent"
Else
Selection.Style = "comma"
End If
Next
Next
End Sub

Gruß Sylvio
Anzeige
AW: In VBA: cells(An:Hn)
03.04.2006 16:11:19
Fab
Hey Sylvio,
hatte das zwischenzeitlich manuell gelöst ;)
PC bleibt zwar doof, lässt sich aber stets überraschen.
Ich hab mir einfach die Scroll-Up methode aufzeichnen lassen und das Makro genommen ;-)
bei kleinen Daten geht das ohne Proleme, sollte ich mal mehr Zeilen haben, benutze ich deine Methode.
Vielen Danke für alles

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige