/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
If InStr(iNowAt, S, sSearchTxt) = 0 Then g~
Fra : Mathias


Dato : 22-02-04 17:29

Hej NG.
Hvorfor giver "If InStr(iNowAt, S, sSearchTxt) = 0 Then" fejlen "Invalid
procedure call or argument"? Det plejer da at virke :(.

Hilsen Mathias

 
 
Gert Krabsen (22-02-2004)
Kommentar
Fra : Gert Krabsen


Dato : 22-02-04 17:53

Der kommer muligvis an på, hvilke værdier du har tildelt variablerne
iNowAt, S og sSearchTxt
Hvis nu S ikke er numerisk ?


/Krabsen

Sun, 22 Feb 2004 16:29:27 GMT, Mathias <mathias@nonne.tld> skrev:

> Hej NG.
> Hvorfor giver "If InStr(iNowAt, S, sSearchTxt) = 0 Then" fejlen "Invalid
> procedure call or argument"? Det plejer da at virke :(.
>
> Hilsen Mathias
>



--
Sendt via Opera.
www.krabsen.dk
www.responsnord.dk
mfl

Mathias (23-02-2004)
Kommentar
Fra : Mathias


Dato : 23-02-04 19:36

Gert Krabsen <news@fjernkrabsenfjernes.dk> wrote in
newsr3r6ihkp0p03yo@news.sunsite.auc.dk:

S er ikke numerisk, og det skal den ikke være. Syntaxen er jo:
Function InStr([Start], [String1], [String2], [Compare As VbCompareMethod
= vbBinaryCompare])
Så det er ikke det.

Mine variabler er:
S: En masse spørgsmål og svar, delt med et linieskift.
iNowAt: Skifter heletiden. Starter på 1, og fortsætter opad. Se her:
Do Until iNowAt >= Len(S)
If InStr(iNowAt, S, sSearchTxt) = 0 Then
Exit Do
Else
S2 = S2 & Mid(S, InStrRev(S, vbCrLf, iNowAt), InStr(InStrRev
(S, vbCrLf, iNowAt) + 1, S, vbCrLf)) & vbCrLf
iNowAt = iNowAt + InStr(iNowAt, S, sSearchTxt) + Len
(sSearchTxt)
End If
Loop
sSearchTxt: En string, som brugeren bestemmer via en inputbox.

> Der kommer muligvis an på, hvilke værdier du har tildelt variablerne
> iNowAt, S og sSearchTxt
> Hvis nu S ikke er numerisk ?
>
>
> /Krabsen
>
> Sun, 22 Feb 2004 16:29:27 GMT, Mathias <mathias@nonne.tld> skrev:
>
>> Hej NG.
>> Hvorfor giver "If InStr(iNowAt, S, sSearchTxt) = 0 Then" fejlen
>> "Invalid procedure call or argument"? Det plejer da at virke :(.
>>
>> Hilsen Mathias
>>
>
>
>


Gert Krabsen (23-02-2004)
Kommentar
Fra : Gert Krabsen


Dato : 23-02-04 22:52

Pling! Så ringede klokken:

Er du _helt_ sikker på, at iNowAt er mindst 1? Hvis den kun er deklareret,
har den værdien 0.

Prøv evt. de to alternativer:

   InStr(0, s, sSearchTxt)
   InStr(1, s, sSearchTxt)

den første giver "Invalid procedure call or argument"?


mvh
Krabsen


p.s. jeg huskede forkert m.h.t. argumenternes rækkefølge




Mon, 23 Feb 2004 18:36:07 GMT, Mathias <mathias@nonne.tld> skrev:

> Gert Krabsen <news@fjernkrabsenfjernes.dk> wrote in
> newsr3r6ihkp0p03yo@news.sunsite.auc.dk:
>
> S er ikke numerisk, og det skal den ikke være. Syntaxen er jo:
> Function InStr([Start], [String1], [String2], [Compare As VbCompareMethod
> = vbBinaryCompare])
> Så det er ikke det.
>
> Mine variabler er:
> S: En masse spørgsmål og svar, delt med et linieskift.
> iNowAt: Skifter heletiden. Starter på 1, og fortsætter opad. Se her:
> Do Until iNowAt >= Len(S)
> If InStr(iNowAt, S, sSearchTxt) = 0 Then
> Exit Do
> Else
> S2 = S2 & Mid(S, InStrRev(S, vbCrLf, iNowAt), InStr(InStrRev
> (S, vbCrLf, iNowAt) + 1, S, vbCrLf)) & vbCrLf
> iNowAt = iNowAt + InStr(iNowAt, S, sSearchTxt) + Len
> (sSearchTxt)
> End If
> Loop
> sSearchTxt: En string, som brugeren bestemmer via en inputbox.
>
>> Der kommer muligvis an på, hvilke værdier du har tildelt variablerne
>> iNowAt, S og sSearchTxt
>> Hvis nu S ikke er numerisk ?
>>
>>
>> /Krabsen
>>
>> Sun, 22 Feb 2004 16:29:27 GMT, Mathias <mathias@nonne.tld> skrev:
>>
>>> Hej NG.
>>> Hvorfor giver "If InStr(iNowAt, S, sSearchTxt) = 0 Then" fejlen
>>> "Invalid procedure call or argument"? Det plejer da at virke :(.
>>>
>>> Hilsen Mathias
>>>
>>
>>
>>
>
>



--
Sendt via Opera.
www.krabsen.dk
www.responsnord.dk
mfl

Mathias (24-02-2004)
Kommentar
Fra : Mathias


Dato : 24-02-04 19:00

Gert Krabsen <news@fjernkrabsenfjernes.dk> wrote in
newsr3ue03xp0p03yo@news.sunsite.auc.dk:

> Er du _helt_ sikker på, at iNowAt er mindst 1? Hvis den kun er
> deklareret, har den værdien 0.

Den er sat til:
iNowAt = 0
.. o O ( DOH!!!!! )

Tak for tippet, men jeg tror at jeg starter forfra. Jeg har fået en bedre
idé til hvordan jeg kan lave mit program. Jeg har startet det på en dum
måde :). Ellers tak - jeg har da (i det mindste lært at InStr starter
på 1, og ikke på 0.

Hilsen Mathias

preben nielsen (22-02-2004)
Kommentar
Fra : preben nielsen


Dato : 22-02-04 18:55


"Mathias" <mathias@nonne.tld> skrev i en meddelelse
news:Xns9497B1ECB44085q738hgq@212.54.64.134...
> Hej NG.
> Hvorfor giver "If InStr(iNowAt, S, sSearchTxt) = 0 Then" fejlen
"Invalid
> procedure call or argument"? Det plejer da at virke :(.

Det kommer da an på hvad iNowAt, S og sSearchTxt er for typer.


--
/\ preben nielsen
\/\ prel@post.tele.dk



Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste