Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1312to1316
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
Inhaltsverzeichnis

Makrocode

Makrocode
08.05.2013 14:37:51
Dirk
Hallo aus Hannover,
ich habe einen Code geschrieben, der nur falsch sein kann....
For i = 1 To AnzahlZeilen2
If Range("F" & i + 1).Text = wkB Then
ActiveCell = 1
Else
Range("U" & i + 1).FormulaR1C1 = "=COUNTIF(C[-1],RC[-1])"
Next i
Nun eine kurze Erklärung was ich damit bezwecken möchte. Letztendlich geht es nur um den If-Then-Else Ausdruck. Es soll in der Spalte F geschaut werden, ob dort die Buchstaben "wkB" vorhanden sind (möglich ist dort immer eine 5 stellige Zahl wie "79896" oder eine 5 stellige Zahl mit entsprechender Ergänzung "79896wkB". Was wahrscheinlich etwas unschlau ist, weil es damit mal Zahl mal Text ist. Ist aber nicht änderbar). Wenn "wkB" vorhanden ist, soll eine "1" in die aktive Zelle geschrieben werden. Wenn nicht, dann soll die entsprechende ZählenWenn-Formel eingefügt werden.
Die Formulierung mit "[...].Text" habe ich einfach mal so hingeschrieben....
Konnte ich mich verständlich machen?
Viele Grüße aus Hannover und herzlichen Dank!
Dirk

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

Betreff
Datum
Anwender
Anzeige
AW: Makrocode
08.05.2013 14:51:52
UweD
so?
Sub tt()
AnzahlZeilen2 = 10 'für Test
For i = 2 To AnzahlZeilen2
If InStr(Range("F" & i).Text, "wkB") > 0 Then
Range("F" & i) = 1
Else
Range("U" & i).FormulaR1C1 = "=COUNTIF(C[-1],RC[-1])"
End If
Next i
End Sub
Gruß UweD

AW: Makrocode
08.05.2013 14:53:22
hary
Moin
Welche Zell ist ActiveCell?
Dim i As Long
For i = 2 To 5 'AnzahlZeilen2
If Not IsNumeric(Range("F" & i)) Then ' pruefung ob eine Zahl
ActiveCell = 1
Else
Range("U" & i).FormulaR1C1 = "=COUNTIF(C[-1],RC[-1])"
End If
Next i

gruss hary

Anzeige
AW: Makrocode
08.05.2013 16:32:57
Matthias
Hallo
ich habe einen Code geschrieben, der nur falsch sein kann
Du hast Recht ;-)
hary hat das auch gleich so übernommen, er muss Dir ja erst Mal glauben was Du schreibst.
Ich glaube das eher nicht, kann mich aber auch täuschen.
Deine Schleife läuft über einen Bereich und die Aktive Zelle kann eine ganz Andere sein!
Evtl. steht aber dort /ActiveCell) eine wichtige Formel die der Code rücksichtslos überschrieben würde!
Zitat:
Wenn "wkB" vorhanden ist, soll eine "1" in die aktive Zelle geschrieben werden.
Das heißt beim ersten Fund im durchsuchten Bereich wird in die aktive Zelle!! eine 1 geschrieben, egal was da drinsteht! Bei einem erneuten Fund in der Schleife, in einer anderen Zelle des Bereichs wird diese 1 durch wiederum eine 1 ersetzt. Wobei ActiveCell nicht im durchsucheten Bereich liegen muß!!
Ich glaube also nicht das Du das so willst, sondern eher wie Uwe es dargestellt hat.
Im Else-Zweig gibst Du ja auch explitit an das Du in Spalte("U") die Formel schreiben willst.
Ich kann mir also nicht vorstellen das Du immer in die Aktive Zelle die 1 reinschreiben willst.
Gruß Matthias

Anzeige
AW: Makrocode
13.05.2013 11:44:59
Dirk
Hallo Hary, hallo Matthias,
ich war ein paar Tage an der See und konnte daher bisher nicht antworten. Ihr habt mir beide sehr weiter geholfen, denn mein Problem ist gelöst. Wobei genau die Frage, welche nun gerade die "ActiveCell" ist mich etwas beschäftigt hat - bevor ich den Kommentar von Matthias gelesen habe, der natürlich recht hat. Aber es ist ja soweiso am besten, wenn man selbst auf die Lösung kommt :-)
Euch nochmals einen herzlichen Dank!
Gruß
Dirk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige