[Excel]Resultaten van zoekactie 'trimmen'

Pagina: 1
Acties:

  • LiquidSmoke
  • Registratie: Maart 2001
  • Laatst online: 15-08 11:12
Ik heb de volgende zoekactie, via een macro:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Sub vrkregelszoeken()

'Dimensioneren van variabelen
    Dim lngIndex As Long
    Dim rngFiles As Range
   
'Oude data verwijderen...
    Rows("9:1000").Select
    Selection.ClearContents
    Range("A1").Select
    
'Zoekparameters instellen
     With Application.FileSearch
        .NewSearch
        .LookIn = "d:\temp"
        .SearchSubFolders = True
        .TextOrProperty = ""
        .PropertyTests.Add Name:="Grootte", Condition:=msoConditionAtMost, Value:="0"
        .FileName = "vrkrgls.txt"
        
'Zoeken uitvoeren
        If .Execute() > 0 Then
        Set rngFiles = Range("B10")
        rngFiles.Offset(-1, 0) = "Bestanden gevonden: " & .FoundFiles.Count & ""
        
'Vullen van blad
        For lngIndex = 1 To .FoundFiles.Count
        ActiveSheet.Hyperlinks.Add Anchor:=rngFiles.Offset(lngIndex, 0), Address:=.FoundFiles.Item(lngIndex)
        Next
        
         Else
        
        MsgBox "Niks gevonden!"
        
      End If
    End With
    
End Sub


Deze code resulteert in het volgende:

code:
1
2
3
4
D:\Temp\2886\vrkrgls.txt
D:\Temp\2817\vrkrgls.txt
D:\Temp\2924\vrkrgls.txt
D:\Temp\2850\vrkrgls.txt


Dit werkt perfect, echter wil ik nu via een SQL-query de verantwoordelijke uit onze Isah database halen.

Om dit de doen heb ik het nummer uit het pad nodig '2886 bijv.
Via een LIKE '%2886' kan ik het productiedossier (W002886) aanroepen.

Hoe snij ik dit nummer uit het resultaat? Ben al de halve dag via de search en google aan het zoeken :( Krijg wel voor elkaar dat ik alleen de bestandsnaam heb, maar dit is niet wat ik zoek!.

Het eerste stuk 'D:\temp\' en het laatste stuk '\vrkrgls.txt' is altijd hetzelfde en moet dus weg....

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Als het toch altijd hetzelfde is: kijk eens naar left(), right() en vooral mid() ;)

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • LiquidSmoke
  • Registratie: Maart 2001
  • Laatst online: 15-08 11:12
Daar had ik al iets over gezien,

kan ik dan een left() zetten als left(d:\temp\) en right als right(\vrkrgls.txt)

hoe zet ik mid() dan? iets als mid(\????\) oid?

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Het sterft van de voorbeelden van mid$() of druk eens op F1 als je in de VBA editor bent. Daar valt toch weinig aan toe te voegen?

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • LiquidSmoke
  • Registratie: Maart 2001
  • Laatst online: 15-08 11:12
Heb het nu opgelost door eerst de Filesearch.Founditem in een Len te zetten, daarna trimmen met mid en dan plakken op de goede plek. bedankt voor de pointer iig :)