Acties:
  • 0 Henk 'm!

  • Slashx
  • Registratie: November 2008
  • Laatst online: 11-05 22:17

Slashx

WOT: Mr_Slashx

Topicstarter
Ik moet de bestanden die in een directory staan invoegen in excel.
Dit lukt me wel alleen hij zet de extensie er ook bij. Dat hoeft dus niet.

Ben begonnen met kopieren en plakken maar dat kan wel een tijdje duren.
Nu heb ik op internet een macro gevonden die mijn wensen wel kan vervullen maar niet helemaal.
Deze kopieerd nl. bestandsnaam en de extensie in een cel.

Nu is mijn vraag kan iemand deze macro aanpassen zodat deze de extensie er niet bij zet in een cel.?
Mijn kennis van macro's is nihil.
Kheb internet al afgezocht maar niks gevonden. Helaas kan ik dit thuis niet uitproberen want ik werk thuis met excel 2007.
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[Sub dir()
Dim i As Integer, directory As String, naam As String
directory = "c:\temp"
With Application.FileSearch
    .NewSearch
    .LookIn = directory
    .Filename = "*.*"
    .SearchSubFolders = False
    .Execute
    For i = 1 To .FoundFiles.Count
        naam = .FoundFiles(i)
        naam = Mid(Replace(naam, directory, ""), 2, 99)
        Cells(i + 1, 1) = naam
              
              Next i
End With
End Sub

If the shit hits the fan everybody get a piece of it


Acties:
  • 0 Henk 'm!

  • gambieter
  • Registratie: Oktober 2006
  • Niet online

gambieter

Just me & my cat

In een DOS-scherm de directory listing met "dir >file.txt" naar een bestand printen, daarna de punt veranderen in een tab in MS-Word met zoek en vervang, en dan copy paste naar een Excel sheet?

I had a decent lunch, and I'm feeling quite amiable. That's why you're still alive.


Acties:
  • 0 Henk 'm!

  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

Ik zie het probleem niet. Voer de macro uit en verwijder de kolom met de extensies daarna met de hand. Da's maar 1 extra handeling.

Acties:
  • 0 Henk 'm!

  • Slashx
  • Registratie: November 2008
  • Laatst online: 11-05 22:17

Slashx

WOT: Mr_Slashx

Topicstarter
downtime schreef op donderdag 02 april 2009 @ 20:00:
Ik zie het probleem niet. Voer de macro uit en verwijder de kolom met de extensies daarna met de hand. Da's maar 1 extra handeling.
Niet als het over duizenden bestanden gaat.
Nu doe ik alles 1 voor 1.
oo wacht even dus jij zegt dat de extensie in een aparte kolom staat.
Helaas het volledige bestandsnaam met de extensie staat in 1 kolom.

[ Voor 17% gewijzigd door Slashx op 02-04-2009 21:47 ]

If the shit hits the fan everybody get a piece of it


Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 10:07
Voeg na
naam = Mid(Replace(naam, directory, ""), 2, 99)
toe:
naam=left(naam,instrrev(naam)-1)
(Instr zoekt het tweede argument in het eerste en geeft de tekenpositie van de gevonden string terug, instrrev doet hetzelfde, maar begint achteraan met zoeken. Als je achteraan een bestandsnaam gaat zoeken naar een punt, is alles voor die positie dus de naam.)

Acties:
  • 0 Henk 'm!

  • Slashx
  • Registratie: November 2008
  • Laatst online: 11-05 22:17

Slashx

WOT: Mr_Slashx

Topicstarter
onkl schreef op donderdag 02 april 2009 @ 23:07:
Voeg na
naam = Mid(Replace(naam, directory, ""), 2, 99)
toe:
naam=left(naam,instrrev(naam)-1)
(Instr zoekt het tweede argument in het eerste en geeft de tekenpositie van de gevonden string terug, instrrev doet hetzelfde, maar begint achteraan met zoeken. Als je achteraan een bestandsnaam gaat zoeken naar een punt, is alles voor die positie dus de naam.)
Krijg een fout melding.
Compile error -- argument not optional

Zie nu net dat ik hier werk met Excel 2000. Wie kan de topic titel ff aanpassen?

If the shit hits the fan everybody get a piece of it


Acties:
  • 0 Henk 'm!

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 04-10-2024
De zoekstring is vergeten:
VBScript:
1
instrrev(naam, ".")

Acties:
  • 0 Henk 'm!

Anoniem: 113297

Slashx schreef op vrijdag 03 april 2009 @ 09:47:
Zie nu net dat ik hier werk met Excel 2000. Wie kan de topic titel ff aanpassen?
maakt niet zoveel uit, deze functie is beschikbaar vanaf office 2000, het probleem is meer dat de te zoeken string in de functie niet is opgenomen.

Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 10:07
sam.vimes schreef op vrijdag 03 april 2009 @ 10:43:
De zoekstring is vergeten:
VBScript:
1
instrrev(naam, ".")
offtopic:
Oeps. 7(8)7 Mooi weer vandaag, niet?

Acties:
  • 0 Henk 'm!

  • Slashx
  • Registratie: November 2008
  • Laatst online: 11-05 22:17

Slashx

WOT: Mr_Slashx

Topicstarter
Kijk this is what iam talking about.....

Alleen er staat nog een punt achter de naam.
En die moet ook weg..

If the shit hits the fan everybody get a piece of it


Acties:
  • 0 Henk 'm!

Anoniem: 113297

Slashx schreef op vrijdag 03 april 2009 @ 12:15:
Alleen er staat nog een punt achter de naam.
En die moet ook weg..
die oplossing staat al vermeld in dit topic ;)

Acties:
  • 0 Henk 'm!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 10:07
Anoniem: 113297 schreef op vrijdag 03 april 2009 @ 12:19:
[...]
die oplossing staat al vermeld in dit topic ;)
Gij gemenerik. Zomaar zelfredzaamheid enthousiasmeren.
@TS: Probeer eens uit te vinden wat de functie "left" doet (De werking is gelijk aan dezelfde functie in excel zelf) en welke argumenten wat doen.
Pagina: 1