Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1828to1832
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

COUNTIF mit Spalte aus Variable

COUNTIF mit Spalte aus Variable
17.05.2021 14:49:50
Michael
Hallo liebe Excel-Gemeinde,
ich hab ein Problem, bei dem ich einfach nicht weiterkomme.
Ich will einen COUNTIF machen auf eine Spalte, die vorher noch nicht definiert ist, d.h. ich will mir die Spaltennr. in eine Variable schreiben und diese Variable dann im VBA-Code beim COUNTIF verwenden. Ich hab folgendes programmiert:

Sub Macro1()
' Macro1 Macro
Dim col10min As Integer
Sheets("ResUsage").Select
col10min = WorksheetFunction.Match("Minute10", Rows("1:1"), 0)
Range("CK41").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-89 + col10min],0)"
End Sub
bei der Formel mit ActiveCell kommt es zum Fehler 1004
Wer kann mir helfen?
Danke
Michael

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: COUNTIF mit Spalte aus Variable
17.05.2021 14:59:49
Michael
ich hab die Lösung nun doch selbst gefunden:
ActiveCell.FormulaR1C1 = "=COUNTIF(C" & col10min & ",0)"
Sehr gut
17.05.2021 15:35:35
Daniel
Lösungen selber finden ist immer gut, Forum darüber informieren auch.
daher hier noch ein kleiner Optimierungsvorschlag, der hier vielleicht nicht zum Tragen kommt, denn ich aber bei komplexeren Formeln extrem hilfreich finde (vorallem, wenn die Variable mehrfach in die Formel eingesetzt wird)
1. schriebe die Formel zunächst in eine String-Variable. Verwende hier an der Stelle, an welcher die Variable eingesetzte wird, einen Dummy-Text der in der Formel ansonsten nicht vorkommen kann.
2. ersetze in der Formel den Dummy-Text durch den Wert:
also in etwa so:

FO =  "=COUNTIF(Cxxx,0)"
FO = Replace(FO, "xxx", col10min)
Range("CK41").FormulaR1C1 = FO
wie gesagt, längere Formeln werden ansonsten durch die Unterbrechnungen zum Einfügen der Variablen kaum mehr lesbar.
und ach ja, Select und Activate solltest du auch weglassen, sondern immer gleich den Befehl direkt an die Zelle oder den Zellbereich anhängen, ohne diesen vorher zu selektieren.
Gruß Daniel
Anzeige
AW: COUNTIF mit Spalte aus Variable
17.05.2021 15:00:05
ChrisL
Hi Michael
Den String müsstest du 'aufbrechen'
"=Text-String " & Zahl & " es geht weiter"

Sub Macro1()
Dim col10min As Integer
With Sheets("ResUsage")
col10min = WorksheetFunction.Match("Minute10", .Rows("1:1"), 0)
.Range("CK41").FormulaR1C1 = "=COUNTIF(C[" & col10min - 89 & "],0)"
End With
End Sub
cu
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige