Hej
hur får man den här kodraden att inte bli case sensitive utan att göra något med variabeln kod?
IF Instr(kod,"<head>")>0 Then
9 svar · 224 visningar · startad av Addeladde
Hej
hur får man den här kodraden att inte bli case sensitive utan att göra något med variabeln kod?
IF Instr(kod,"<head>")>0 Then
Passar även på att säga hur dumt och förvirrande det är att ha en optional parameter som första parameter. :)
Japp! Den är ju dessutom inte optional längre om man tillhandahåller optionalparametern compare... Pheew.
Håller med, Erik! :)
mvh,
Lite OT men...
Hur fan skriver man egentligen en sån sak i VB. Vanlig "optional byval" funkar ju inte innan vanliga byval argument. Så vad skriver man? :)
Bra fråga. Jag hade nog gjort det med varianter i interfacet med två optionalparametrar på slutet, och kontrollerat alla varianternas innehåll för att veta vad som ska göras.
Public Function Test (ByVal var1 As Variant, ByVal var2 As Variant, Optional ByVal var3 As Variant, Optional ByVal var4 As Integer = 0) As Integer
If IsNumeric(var1) Then
' Första parametern är ett tal, därmed startposition
strCompare1 = Cstr(var2)
strCompare2 = Cstr(var3)
Else
strCompare1 = Cstr(var1)
strCompare2 = Cstr(var2)
End If
Select Case var4
Case 0 : ' Gör något
Case 1 : ' Gör något annat
End Select
End Function
Nu blev ju det här ganska off topic, men jag hoppas att frågeställaren i alla fall fått svar på sin fråga.
Mvh,
optional parameter ???
Hmm ja, så är det kanske gjort...
Hyfsat korkat. Måste vara nån gammal kvarleva. Eller så fick en praktikant göra funktionen InStr. :e
I VB kan man skriva:
Function Foo(Optional ByVal x As Long = -1)
Då behöver inte parametern skickas in, och skickas den inte in så blir den minus ett eftersom jag skrev " = -1".
Mycket smidigt, och något man saknar mycket i vanlig VBScript. :)