Ang tidigare tråd FileListBox och Niklas helt riktiga invändning . Hittar sista punkten, men värdet den returnerar räknas från början. Då borde det vara rätt att skriva så här. Jepp. Förutom i fallet där det finns mer än en punkt. Vanligt för vetenskapliga artiklar är t.ex.InStrRev
Någon som begriper varför svaret blir 12 här, borde bli 4
<code>
Option Explicit
Private Sub Command1_Click()
Dim tmpStr As String, pos As Long
tmpStr = "svenpersson.jpg"
pos = InStrRev(tmpStr, ".")
MsgBox pos
End Sub
</code>Sv: InStrRev
Använd
mid$(str, 1, instrrev(str, "."))
för att få allt framför, eller
mid$(str, instrrev(str, "."))
för att få allt efter.Sv: InStrRev
<code>
Private Sub Form_Load()
Dim i As Long, tmpStr As String, pos As Long
For i = 0 To File1.ListCount - 1
tmpStr = File1.List(i)
pos = InStrRev(tmpStr, ".")
List1.AddItem Left$(tmpStr, pos - 1)
Next 'i
</code>
Dvs samma som att bara skriva <b>InStr(tmpStr,".")</b>Sv:InStrRev
document.ps.gz
Vad är ändelen, gz eller ps.gz?
gz är en g-zippad fil.
ps är en postscript-fil.
ps.gz blir då en g-zippad postscript-fil.
I det här fallet är det nästan en debattfråga vad som är rätt, men jag håller mig nog till att det bara ska vara det sista. Det är inte ovanligt att folk gör grejer i stil med:
"Hans P. Andersson.jpg"
idag.