Hvorfor er det ikke alle functions der kan tastes "direkte" i VBA?
Hej med jer,Jeg har et, sikkert tåbeligt, spørgsmål men sådan nogle skal der jo også være en gang imellem så I andre har noget at grine lidt af :-)
Mit spørgsmål er som følger.
Nedenstående to udgaver af samme function kan indtastes uden problemer og fungerer lige efter planen.
RK = 2
Do
Cells(RK, 24) = (Right(Cells(RK, 25), 2))
RK = RK + 1
Loop Until Cells(RK, 1) = ""
RK = 2
Do
Cells(RK, 25) = Right(Cells(RK, 18), 2)
RK = RK + 1
Loop Until Cells(RK, 1) = ""
MEN hvis jeg nu vil bruge nedenstående function får jeg fejl?
Range(Columns(23), Columns(25)).Delete
RK = 2
Do
Bst = Cells(RK, 14)
Lev = Cells(RK, 18)
AntD = Days360(Bst, Lev, True)
RK = RK + 1
Loop Until Cells(RK, 1) = ""
Én ting ville være hvis det var fordi et af argumenterne ikke passede, men den fejl jeg får er, "Sub or function not defined" og det forstår jeg ikke da jeg jo netop vælger days360 som function og den vises på samme måde hvis man benytter "hjælp-funktionen" i VBA-editoren?
Håber der er en af jer herinde der kan forklare mig hvorfor nogle functions kan tastes direkte og andre ikke kan.
Jeg ved godt, at jeg kunne optage den og benytte det her R1C1 - format, men det ville nu bare være lettere hvis jeg kunne taste det direkte ind og bruge "cells(x,x)-referencer" til alle functions istedet for.
Jeg vil gerne understrege at valget af DAYS360-functionen sagtens kunne have været anderledes, da det ikke specifikt er denne funktion der driller mig (det gør den lige nu) men også bare generel undren over at nogle functions kan skrives som i de to øverste (fungerende) eksempler og at andre functions ikke kan...
Jeg ved at svaret er ligetil og startede jo også med at skrive det, men jeg er ganske enkelt ikke kvik nok til at regne det ud, så jeg håber på hjælp herinde fra.
Med venlig hilsen
Henrik