Avatar billede moba Nybegynder
27. september 2004 - 21:36 Der er 13 kommentarer

countif vs. tæl.hvis

Hejsa
Jeg skal lave en makro som kan køre på både dansk og engelsk version af excel. Jeg er i den forbindelse stødt på et problem.
Jeg ønsker at gøre følgende:
Activecell.FormulaR1C1 = "=COUNTIF(C3:C32;"">0"")"
Dette duer ikke, men jeg kan få lov til at bruge:
Activecell.FormulaR1C1 = "=COUNTIF(R[-30]C:R[-1]C,"">0"")"
Jeg kan bare ikke rigtig finde ud af at bruge denne fjollede addresering med [-xx] osv. men vil gerne kunne bruge den første løsning. Er det ikke muligt?
Kan nogen hjælpe mig?
Morten

I en makro bruger jeg følgende kode
Avatar billede sjap Praktikant
27. september 2004 - 21:38 #1
Blot et gæt:

Activecell.Formula = "=COUNTIF(C3:C32;"">0"")"
Avatar billede bri2004 Nybegynder
01. oktober 2004 - 08:25 #2
Et andet hurtigt skud fra hoften:
Prøv at bruge Activecell.worksheetfunction.countif(C3:C32;"">0"")

I al fald er det min erfaring, at worksheetfunction objektet fungerer både på tværs af sprog versioner og fungerer bedre mht. adresser og ranges. Men brug evt. VBA hjælpefilen (min hjælpefil er desværre lige gået ned, derfor det lidt generelle svar).
Avatar billede bak Forsker
01. oktober 2004 - 09:43 #3
Activecell.FormulaR1C1  betyder at du skal bruge relative referencer "=COUNTIF(R[-30]C:R[-1]C,"">0"")"

Activecell.Formula  betyder at du kan bruge normale referencer "=COUNTIF(C3:C32;"">0"")"

Activecell.FormulaLocal betyder at du kan bruge Dansk (lokal) formel

"=TÆL.HVIS(C3:C32;"">0"")"
Avatar billede moba Nybegynder
03. oktober 2004 - 23:02 #4
Hejsa, forsøger med jeres løsninger i næste uge, forløbig tak.
Morten
Avatar billede moba Nybegynder
05. oktober 2004 - 15:19 #5
Bak, forsøger at bruge Activecell.Formula men jeg får RUNTIME error 1004.  Jeg skrver
ActiveSheet.Range("A2").Select
ActiveCell.Formula = "=COUNTIF(C5:C10;"">0"")"
Any Clue???
Avatar billede bak Forsker
05. oktober 2004 - 16:19 #6
ActiveCell.Formula = "=COUNTIF(C5:C10,"">0"")"

det skal skrives med komma istedet for semicolon
Avatar billede moba Nybegynder
06. oktober 2004 - 20:07 #7
det virker heller ikke, men har fundet ud af at det virker hvis jeg ikke bruger dobbelt "" men i stedet bruger char(30)"... Mystisk
Avatar billede sjap Praktikant
06. oktober 2004 - 20:18 #8
Hvad med
ActiveCell.Formula = "=COUNTIF(C5:C10,'>0')"
Avatar billede bak Forsker
06. oktober 2004 - 21:50 #9
Enig i at det mystisk. Nu har jeg testet i xl97, xl2000 og xp og det virker da fint :-)
Avatar billede sjap Praktikant
06. oktober 2004 - 22:41 #10
Hvaaaa' bak. Vil det sige at du ikke har 2003? Er du begyndt at falde af på den? :0)
Avatar billede moba Nybegynder
06. oktober 2004 - 22:44 #11
kunne ikke være mere ening, jeg var også ved at stå helt af. Men fandt et tip på google... hvade sgu nær smidt maskinen ud af vinduet
Avatar billede bak Forsker
06. oktober 2004 - 22:51 #12
sjap->ska' du håne en gammel mand, bare fordi har ikke har råd til det nyeste kram ???

Så skulle du se mine computere..... :-)  De er de rene oldsager, så det er derfor at jeg altid er nødt til at hastighedoptimeremine koder..
Avatar billede sjap Praktikant
19. marts 2005 - 19:17 #13
moba > Skulle du ikke se at få lukket det her spørgsmål?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester