Bestaan alle namen uit vier delen?
Zo ja, dan bestaat er een split functie die je kan gebruiken. Die functie splitst een string in een array op een door de gebruiker symbool, hier dus de _. Uit die array neem je vervolgens het deel wat je in de kolom wil hebben.
Om de query overzichtelijk te houden (en zo snel mogelijk), maak je een module aan waarin je een functie zet die dit doet. Daarin maak je je array en de string die je wil splitsen een
static:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| Public Function NameSplit(sFilename As String, iPart As Integer) As String
Static sParts() As String
Static sFN As String
If Not sFN=sFilename Then
sParts=Split(sFilename,"_") 'ik weet niet zeker of deze functie ook echt zo heet, zoek ff in de help
sFN=sFilename
End If
NameSplit=sParts(iPart)
End Function |
Dit is natuurlijk pseudocode, vul zelf even in wat de echte functienamen zijn die je nodig hebt. In je query kan je nu dit gebruiken:
code:
1
| SELECT NameSplit([Filename],1) AS Deel1, NameSplit([Filename],2) AS Deel2 FROM FileNames |
Door een static te gebruiken in de functie voorkom je dat je vaker dan nodig de relatief dure split moet uitvoeren.
My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant