dim i, tmp, linie, tekst, arrTekst ' definer alle variablerne
' --- Dette er simulation af indholdet af en textbox --- tekst = "" tekst = tekst & "£@$£€$£€$€{€{€$654654654£$@5£€$€gfdgfdgfdg......" & vbcrlf tekst = tekst & "-----------------------------------------------------" & vbcrlf tekst = tekst & "Navn: John Johnson" & vbcrlf tekst = tekst & "" & vbcrlf tekst = tekst & "Gade: John vej John" & vbcrlf tekst = tekst & "" & vbcrlf tekst = tekst & "By: Johnville john" & vbcrlf tekst = tekst & "------------------------------------------------------" & vbcrlf ' --- Simulation slut ---
arrTekst = split(tekst, vbCrLf) ' split teksten op ved linieskift, dvs 1 plads i arrayen per linie
for i = 0 to ubound(arrTekst) ' kør en loop fra 0 og til max pladser i arrayen linie = arrTekst(i) ' smid den nuværende linie over i variablen "linie"
if instr(linie, "Navn: ") then ' undersøg om linien indeholder "Navn: " ' Yep.. linien indeholde "Navn: " tmp = split(linie, ": ") ' split linien op ved ": ", så der oprettes en array med 2 plads, start ved 0 text2.text = tmp(1) ' smidt det andet felt (felt 2 = plads 1, da den start ved 0) over i textbox'en ' msgbox "navn: " & tmp(1) ' debug/test.. denne linie kan slettes end if
if instr(linie, "Gade: ") then tmp = split(linie, ": ") text3.text = tmp(1) ' msgbox "gade: " & tmp(1) end if
if instr(linie, "By: ") then tmp = split(linie, ": ") text4.text = tmp(1) ' msgbox "by: " & tmp(1) end if next
"For i = 1 To 63"? Hvorfor kører den kun fra 0 og til 63? Body kan jo godt lægge længere ned..
Men anyways..:
dim boolBody boolBody = false
For i = 1 To 63 Line Input #2, fil ' den skifter værdi ved hver linie strFil = strFil & fil & vbCrLf
if instr(strFil, "<body") then boolBody = true if instr(strFil, "</body") then boolBody = false if boolBody = true then strBody = strBody & fil & vbCrLf
Next
' variablen "body" indeholder fra "<body" og til "</body".. men den stopper ved samme linie som "</body"
' PS: Det kan godt være, at InStr skal bruge "> -1" eller ' Eksempel: if Instr(alfabet, "abc") > - 1 then
Public Function FindTags(strData As String, strTag1 As String, strTag2 As String) As String Dim intStart As Long Dim intEnd As Long intStart = InStr(1, strData, strTag1, vbTextCompare) If intStart > 0 Then intStart = (intStart + Len(strTag1)) intEnd = InStr(intStart, strData, strTag2, vbTextCompare) If intEnd > 0 Then FindTags = Mid$(strData, intStart, (intEnd - intStart)) End If End If End Function
start loop, fra starten af teksten og til slutningen - Læs fra nuværende 0 og til < - tilføj til tmp - hop til nærmeste > - sæt 0 til nuværende placering hop til start
okay, jeg kommer til at tænke på hvis jeg nu har et tekst felt hvor der står en værdi, det kan feks væe 1 eller 89. Kan jeg så gemme det i mit software eller SKAL jeg til at gemme det i min eksterne fil ?
Hvis du smider det over i en variabel, i dit program/software, vil værdien eksisterer så længe at dit program/software kører. Så snart at lukker dit program, slettes værdien.
Hvis du gemmer værdien i en ekstern fil (på harddisken), kan du loade værdien når du har brug for den. Også selvom du lukker dit program ned, og starter det op igen.
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.