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

CountA per VBA in Zelle schreiben

CountA per VBA in Zelle schreiben
11.10.2016 13:04:40
Hartmut_M
Hallo, ich möchte per VBA eine Funktion in eine Zelle schreiben. Es sollen aus einem anderen Tabellenblatt die nicht leeren Zellen in Spalte A gezählt werden.
Habe diesen Code:
Worksheets("Bericht").Range("K2").FormulaLocal = "=Application.WorksheetFunction.CountA(Sheets(1).Columns("A:A"))"
Der Code wird immer in rot angezeigt. Wo ist der Fehler?
Gruß Hartmut

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CountA per VBA in Zelle schreiben
11.10.2016 13:15:22
Werner
Hallo Hartmut,
Worksheets("Bericht").Range("K2") = WorksheetFunction.CountA(Sheets(1).Columns("A:A"))
Es wird bezahlt und das Ergebnis in die Zelle geschrieben. In der Zielzelle hast du dann einen Wert, keine Formel.
Gruß Werner
Bei der Level-Angabe derartige Hilfe?! orT
11.10.2016 13:23:51
Luc:-?
Gruß, Luc :-?
Total alles falsch, ...
11.10.2016 13:20:09
Luc:-?
…Hartmut!
Was soll eine (engl) WorksheetFunction für VBA in einer ZellFml, noch dazu in einer lokalen also dt? Das verursacht aber nicht den Fehler, denn VBA ist es egal, was du in eine Zelle schreibst. Darauf reagiert dann Xl! Primär sind es die nicht verdoppelten " um A:A, wodurch der Text 2teilig wird ohne das A:A irgendwie eingebunden wird.
Wer derart grobe Fehler und dann noch SyntaxFehler macht, hat von VBA (und ggf überhpt von Pgmmierung) keine Ahnung und sollte sich nicht als gut einschätzen! Da du das aber getan hast, solltest du nun auch allein darauf kommen, wie es richtig ist.
Gruß, Luc :-?
Besser informiert mit …
Anzeige
AW: CountA per VBA in Zelle schreiben
11.10.2016 13:20:27
UweD
Hallo
du mischst hier Sachen.
FormulaLocal erwartet (bei deutschem Excel) auch die Formel in Deutsch
Desweiteren weist du der Zelle keine Formel zu, sondern versuchst eine Mischung aus der Berechnung in VBA aber als Formel dort zuzuweisen.
So wäre es richtig..
Worksheets("Bericht").Range("K2").FormulaR1C1 = "=COUNTA(Tabelle2!C[-10])"
oder in Standard
Worksheets("Bericht").Range("K2").Formula = "=COUNTA(Tabelle2!A:A)"
oder in deutsch
Worksheets("Bericht").Range("K2").FormulaLocal = "=ANZAHL2(Tabelle2!A:A)"
LG UweD
Hast du sein VBA-Level gesehen? Gruß owT
11.10.2016 13:24:47
Luc:-?
:-?
AW: Hast du sein VBA-Level gesehen? Gruß owT
11.10.2016 13:47:31
Hartmut_M
Hallo, vielen Dank für eure Tipps.
@Werner und Uwe: Die Hinweise haben mir wirklich etwas gebracht, damit komme ich weiter.
Herzlichen Dank.
@Luc: Danke auch dir für die konstruktive Hilfe. Habe leider versäumt, mich vorher im Forum schlau zu machen, ab wann man sich in VBA als gut bezeichnen kann. Gelobe Besserung und werde daran arbeiten, deinen Level zu erreichen. ;-)
Gruß Hartmut
Anzeige
AW: Gerne u. Danke für die Rückmeldung. o.w.T.
11.10.2016 13:50:55
Werner
Wer derart triviale Fehler macht, kann einfach ...
11.10.2016 15:04:44
Luc:-?
…nicht gut sein und sollte als Frager nach solch Trivialem, wobei einem schon die Xl- und VBE-Hilfe Antwort geben kann, bescheidener auftreten!
Luc :-?
AW: Wer derart triviale Fehler macht, kann einfach ...
11.10.2016 15:12:24
Hartmut_M
Ja, genau, Bescheidenheit war schon immer mein Problem. :-)
Wünsche dir noch einen schönen Tag. Bin jetzt raus!
...Und noch etwas:
11.10.2016 15:41:26
Luc:-?
(Auch f.Werner, der sonst so eifrig darin ist, CrossPoster „dingfest“ zu machen, und Uwe)
VBA gut ist das zweithöchste einstellbare VBA-Level, das auch die größte Anwendungs­breite hätte, weil sich hier die meisten VBA-Kundigen Antworter bei Bedarf ein­ordnen würden. Die Frage und die gezeigte Code­Zeile liegt aber knapp auf bzw sogar unter dem Niveau des Levels VBA-Basis­kenntnisse.
Luc :-?
Anzeige
AW: Und was möchtest du mir damit mitteilen?
11.10.2016 16:07:52
Werner
Hallo Luc,
das ist mir nämlich nicht ganz klar.
Gruß Werner
Sollte es aber, ...
12.10.2016 15:45:40
Luc:-?
…Werner; ;-]
nämlich, dass du erstaunlich nachsichtig mit jemand (im Ggsatz zu CPern) bist, der VBA-gut sein will, aber eine CodeZeile einstellt und nachfragt, die bestenfalls VBA-Basiskenntnis-Niveau zeigt. So etwas sieht man nur sehr selten und in Verbindung mit dem angegebenen Level habe ich das wohl auch noch nie gesehen…
Gruß, Luc :-?
AW: Sollte es aber, ...
12.10.2016 16:02:36
Werner
Hallo Luc,
mit CP habe ich durchaus Nachsicht. Mir geht es nur darum, dass die Helfer auch wissen, dass anderweitig möglicherweise auch noch Andere am gleichen Problem dran sind. Was mich bei den CP nur ärgert ist, dass die Beiträge in den unterschiedlichen Foren nicht miteinander verlinkt sind. Wenn dem so wäre, dann könnte ja jeder für sich entscheiden ob er helfen will oder nicht.
Und zum Level -naja. Alles eine Frage des Standpunktes. Ich mache Excel nur hobbymäßig. In meinem Bekannten/Kollegenkreis wäre ich aber sowohl in Excel als auch in VBA der absolute Profi. Lege ich die Helfer hier im Forum als Messlatte an, dann bin ich wohl kaum über das Säuglingsalter raus.
Gruß Werner
Anzeige
Na, na, dass manche auch immer untertreiben ...
12.10.2016 19:27:24
Luc:-?
…müssen, Werner… ;-)
Und dann ist es doch doppelt ärgerlich, wenn da einer so daher kommt und einfach das zweithöchste VBA-Level für sich reklamiert. Diese Angabe dient doch eigentlich nur dazu, uns zu sagen, wie sehr unsere AW ggf ins Detail gehen muss.
Und bei den CPern ist es wie im Allgemeinen — Links wdn von Fragern kaum mal gesetzt, nicht mal zu vorher­gehenden BTen. Und da heißt es immer, die jungen Dynamischen kennen sich mit dem Internet besser aus als die unflexiblen Alten. Das scheint aber das, auf dem das beruht, nicht zu umfassen… :->
Luc :-?

7 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige