Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 32
Default copy subfolders, replace text in files and save files in copied subfolders

Hallo,

Ik heb al een flinke VBA code en die doet bijna alles wat ik wil,
alleen worden uit de aangegeven folder ALLE files met "KART*.fmt" uit
de subfolders gekopieerd naar 1 folder. Het is de bedoeling dat alle
originele subfolders worden gekopieerd naar een nieuwe locatie en dat
van daaruit PER subfolder alle files worden doorzocht op de aangegeven
tekststring en dat er tekst in dat file wordt vervangen.
Hier volgt wat ik al heb:

'Filename: Zoek tekst '503' in files.xls - (modTestVBAprogr)
Option Explicit

Sub UpdateFiles()

'Declareren van variabelen
Dim IFileNum As Long
Dim OFileNum As Long
Dim WholeLine As String
Dim i As Long, x As Integer
Dim TestDir As Variant
Dim RowNdx As Integer
Dim ColNdx As Integer
Dim myOutputFolder As String
Dim Regel As Integer

'Foutafhandeling
On Error Resume Next
MkDir myOutputFolder
On Error GoTo 0

'Beginnen in 1e kolom en 1e rij
ColNdx = 1
RowNdx = 1

'Start met zoeken
With Application.FileSearch
.NewSearch
.LookIn = "D:\VBA\Copy of Zoek en vervang tekst '503' in
KART-templates\Approved\Cop00006500\" 'Zoekactie in deze folder
beginnen
' .SearchSubFolders = True 'Ook in subfolders zoeken
.Filename = "*KART*.fmt" 'Zoeken naar alle "KART"-templates


'Gewijzigde files schrijven naar deze locatie
myOutputFolder = "D:\VBA\Copy of Zoek en vervang tekst '503' in
KART-templates\Corrected\Cop00006500\"

If .Execute() 0 Then 'Ga door als "KART"-template is gevonden
ActiveCell.Range("A1").Select 'Zet cursor in excel in cel
A1
For i = 1 To .FoundFiles.Count 'Herhaal zoveel keer als dat
er "KART"-templates zijn gevonden.

IFileNum = FreeFile
Close #IFileNum
Open .FoundFiles(i) For Input As #IFileNum
'Voorbereiden voor het ophalen van tekstregels

OFileNum = FreeFile
Close #OFileNum
Open myOutputFolder & Dir(.FoundFiles(i)) For Output As
#OFileNum 'Voorbereiden voor het wegschrijven van de gewijzigde
tekstregel

TestDir = .FoundFiles(i)
TestDir = Mid(TestDir, 70, 40)

Regel = 1 'Regelteller op 1 zetten. Beginnen bij regel
1 (kan ook vanaf bv. regel 6)
While Not EOF(IFileNum) 'Zolang het einde van het
tekstfile nog niet is bereikt; ga door
Line Input #IFileNum, WholeLine 'Lees een regel in
If Len(Trim(WholeLine)) 0 Then 'Staat er tekst in
deze regel ga dan door
If Regel = 11 And Mid(Trim(WholeLine), 13, 3)
< "503" Then 'Als de 11e regel is bereikt EN er staat geen "503" in
Cells(RowNdx, ColNdx).Value = "De tekst
'MaxHeight = 503' is NIET gevonden in regel " & Regel & " van " &
TestDir & "." 'zet deze tekstregel dan in Excel.
ElseIf Regel = 11 And Mid(Trim(WholeLine),
13, 3) = "503" Then 'Als de 11e regel is bereikt EN er staat WEL "503"
in
Cells(RowNdx, ColNdx).Value = "De tekst
'MaxHeight = 503' is gevonden in regel " & Regel & " van " & TestDir &
"." 'zet deze tekstregel ook dan in Excel.
End If
WholeLine = Replace(WholeLine, " MaxHeight =
503;", _
" MaxHeight = 384; //503 gewijzigd in 384.
dd. 20-10-2005.") 'dd. & Date & ." is ook mogelijk
'Als "MaxHeight = 503;" voorkomt wijzig dit dan
in "MaxHeight = 384;"
Print #OFileNum, WholeLine 'Schrijf deze
gewijzigde regel naar het output file
Else
Print #OFileNum, WholeLine 'Schrijf de
ongewijzigde regel naar het output file

End If
Regel = Regel + 1 ' Regelteller verhogen

Wend
RowNdx = RowNdx + 1 'In excel een regel naar beneden
gaan

Close #IFileNum
Close #OFileNum
Next i
End If
End With

'Schrijf de excel inhoud naar tekstfile
Columns("A:A").Select
' ActiveWorkbook.SaveAs Filename:= _
' "D:\VBA\Copy of Zoek en vervang tekst '503' in
KART-templates\New\Zoek tekst '503' in files.txt" _
' , FileFormat:=xlTextMSDOS
'ActiveWorkbook.Close SaveChanges:=False
End Sub



Kan iemand mij hiermee helpen?

Groeten,
Pieros.

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Opening files in folders and subfolders bestie22 Excel Discussion (Misc queries) 1 September 19th 06 05:23 PM
Auto look through subfolders grewpp Charts and Charting in Excel 1 February 14th 06 02:35 PM
Modify - look at files within subfolders Steph[_3_] Excel Programming 1 October 8th 04 06:51 PM
Delete all files within a folder (incl subfolders) Steph[_3_] Excel Programming 1 September 30th 04 09:59 PM
Trouble making a report of all Files within a Folder and all Subfolders? SuperJas Excel Programming 2 April 2nd 04 02:41 AM


All times are GMT +1. The time now is 03:56 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"