Mikael63 Posted March 21, 2023 Share Posted March 21, 2023 (edited) I den här tråden på eforum... https://eforum.idg.se/topic/359970-efterlysning-batchredigering-sidfot-excel/ fick jag av Monshi en lösning som har hjälpt mig många gånger. Nu skulle jag vilja ha en variant som söker i kalkylbladet och jag vill då ha denna sök & ersätt enbart där. Alltså inte sök i både blad och sidfot/sidhuvud samtidigt. Jag klistrar in hela koden från den fil jag brukar använda: Option Explicit Dim globalSearchFor As String Dim globalReplacewith As String Sub SearchReplace(searchFor As String, replaceWith As String, ws As Worksheet) With ws.PageSetup .LeftHeader = replace(.LeftHeader, searchFor, replaceWith) .CenterHeader = replace(.CenterHeader, searchFor, replaceWith) .RightHeader = replace(.RightHeader, searchFor, replaceWith) .LeftFooter = replace(.LeftFooter, searchFor, replaceWith) .CenterFooter = replace(.CenterFooter, searchFor, replaceWith) .RightFooter = replace(.RightFooter, searchFor, replaceWith) End With End Sub Sub LoopWorkbook(wb As Workbook) Dim ws As Worksheet For Each ws In wb.Worksheets SearchReplace globalSearchFor, globalReplacewith, ws Next ws End Sub Function GetFolder() As String Dim fldr As FileDialog Dim sItem As String Set fldr = Application.FileDialog(msoFileDialogFolderPicker) With fldr .Title = "Select a Folder" .AllowMultiSelect = False .InitialFileName = Application.DefaultFilePath If .Show <> -1 Then GoTo NextCode sItem = .SelectedItems(1) End With NextCode: GetFolder = sItem Set fldr = Nothing End Function Sub StartSub() Dim value value = InputBox("Sök efter") If value = "" Then Exit Sub globalSearchFor = value value = InputBox("Ersätt med") If value = "" Then Exit Sub globalReplacewith = value Dim folder As String folder = GetFolder If folder = "" Then Exit Sub Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True End Sub Sub LoopAllSubFolders(ByVal folderPath As String) Dim filename As String Dim fullFilePath As String Dim numFolders As Long Dim folders() As String Dim i As Long If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\" filename = Dir(folderPath & "*.*", vbDirectory) While Len(filename) <> 0 If Left(filename, 1) <> "." Then fullFilePath = folderPath & filename If (GetAttr(fullFilePath) And vbDirectory) = vbDirectory Then ReDim Preserve folders(0 To numFolders) As String folders(numFolders) = fullFilePath numFolders = numFolders + 1 Else If isExcelFile(folderPath & filename) Then Debug.Print folderPath & filename Dim wb As Workbook On Error GoTo stepOver Set wb = Workbooks.Open(folderPath & filename) LoopWorkbook wb wb.Save wb.Close True stepOver: End If End If End If filename = Dir() Wend For i = 0 To numFolders - 1 LoopAllSubFolders folders(i) Next i End Sub Function isExcelFile(filename As String) As Boolean isExcelFile = (InStr(1, filename, ".xl") > 0) End Function Tillägg: Efter lite sökning hittade jag ett program jag tidigare har använt för detta - IceTeaReplacer. Det fungerar fortfarande men man måste manuellt döda instanser av Excel mellan sökning och ersättning. Edited March 21, 2023 by Mikael63 Mjukvara Quote Link to comment Share on other sites More sharing options...
MH_ Posted March 23, 2023 Share Posted March 23, 2023 (edited) Missförstår jag dig rätt: Du vill köra sök/ersätt i alla excelfiler i en mapp? **ED** Och undermappar ***/ed*** Edited March 23, 2023 by MH_ Quote Link to comment Share on other sites More sharing options...
MH_ Posted March 23, 2023 Share Posted March 23, 2023 Då räcker det väl att ersätta/förenkla Sub SearchReplace(searchFor As String, replaceWith As String, ws As Worksheet) With ws.PageSetup .LeftHeader = replace(.LeftHeader, searchFor, replaceWith) .CenterHeader = replace(.CenterHeader, searchFor, replaceWith) .RightHeader = replace(.RightHeader, searchFor, replaceWith) .LeftFooter = replace(.LeftFooter, searchFor, replaceWith) .CenterFooter = replace(.CenterFooter, searchFor, replaceWith) .RightFooter = replace(.RightFooter, searchFor, replaceWith) End With End Sub Med Sub SearchReplace(searchFor As String, replaceWith As String, ws As Worksheet) ws.Cells.Replace What:=searchFor, Replacement:=replaceWith, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2 End Sub Där du väljer vilka argument som är nödvändiga (searchOrder borde du t.ex kunna skippa) Sen kanske men inte behöver LoopWorkbook egentligen. Men har du en kod som funkar. Dont fix it 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted March 23, 2023 Author Share Posted March 23, 2023 (edited) Tackar, fungerar ju perfekt detta! Skulle egentligen vilja komplettera mitt tillägg i tråden på eforum. Monshi skapade två olika varianter och båda fungerar bra var för sig. Den ena, den som endast ersätter datum, behöver ligga på en viss plats i filstrukturen för att fungera. Den andra, den ovan, kan ligga var som helst då man pekar på angiven startkatalog. Edited March 23, 2023 by Mikael63 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted June 27, 2023 Author Share Posted June 27, 2023 (edited) Nu har jag en fundering till.. Om det skulle gå att läsa av rader i en tabbseparerad textfil som alternativ till att mata in värde i dialoger? Alltså att sökningen sker lika tidigare i alla filer men att man kan söka och ersätta flera ord samtidigt. En annan fundering är om man, oberoende av ovanstående, kunde maska vilka filer som ska genomsökas och ändras? Typ alla ABCD*.xlsx Bifogar hela filen. FindAndReplace_valfritt.xlsm Edited June 27, 2023 by Mikael63 Quote Link to comment Share on other sites More sharing options...
MH_ Posted June 27, 2023 Share Posted June 27, 2023 i "startSub" kan du istället för "InputBox:arna" öppna din textfil som en arbetsbok och hämta sök/ersätt paren från A/B kolumnen. sen loppa rad för rad tills du stöter på en tom cell (do...loop i exemplet) '... 'befintlig kod för att hämta sökväg Dim folder As String folder = GetFolder If folder = "" Then Exit Sub 'ny kod för att hämta sök/ersätt från textfil Dim SökTextBok As Workbook Dim rMinStartCell As Range Set SökTextBok = Workbooks.Open("C:\temp\sökpar.txt") Set rMinStartCell = SökTextBok.Sheets(1).Range("A1") ' Loopa igenom raderna i textfilen Do Until rMinStartCell.Value = "" globalSearchFor = rMinStartCell.Value 'Och "ersätt med" från B-kolumnen globalReplacewith = rMinStartCell.Offset(0, 1).Value 'kör koden du redan har för att kolla om det finns tomma värden If globalSearchFor = "" Then Exit Sub If globalReplacewith = "" Then Exit Sub ' anropa LoopAllSubFolders Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True 'sist i loopen flytta du ner "rMinStartCell" en rad Set rMinStartCell = rMinStartCell.Offset(1, 0) 'och loopa Loop 'och stäng textfilen när loopen är färdig SökTextBok.Close Se bara till att ändra ordningen så att getfolder osv ligger före i koden. Det här exemplet är förmodligen väldigt långsamt. Du kör ett par med sök/ersätt , loppar igenom alla filar osv. Sen tar du nästa par och kör sök/ersätt. Det borde vara mycket snabbare att vända på det - sök upp en fil, kör samtliga sök/ersätt. Sök upp nästa fil osv. Men då måste du ändra din fungerande struktur, och sånt suger. Här har du text om hur man läser textfiler med VBA https://www.automateexcel.com/vba/read-import-text-file/ https://www.automateexcel.com/vba/read-import-text-file/ 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted June 27, 2023 Author Share Posted June 27, 2023 42 minuter sedan, MH_ sade: Det borde vara mycket snabbare att vända på det - sök upp en fil, kör samtliga sök/ersätt. Sök upp nästa fil osv. Ja, inte bara för hastigheten utan även för resultatet! Äh, jag var mest nyfiken, jag har hittat en mjukvara som gör detta jobb men tänkte om det skull fungera utan det. Quote Link to comment Share on other sites More sharing options...
MH_ Posted June 27, 2023 Share Posted June 27, 2023 Utan att testa. Dra ner startsubben till: Sub StartSub() Dim folder As String folder = GetFolder If folder = "" Then Exit Sub Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True End Sub så kan du lägga en "yttre loop" så att du kör alla sök/ersättpar innan du går till nästa bok Sub LoopWorkbook(wb As Workbook) Dim SökTextBok As Workbook Dim rMinStartCell As Range Set SökTextBok = Workbooks.Open("C:\temp\sökpar.txt") Set rMinStartCell = SökTextBok.Sheets(1).Range("A1") Dim ws As Worksheet Do Until rMinStartCell.Value = "" globalSearchFor = rMinStartCell.Value globalReplacewith = rMinStartCell.Offset(0, 1).Value If globalReplacewith = "" Then Exit Sub For Each ws In wb.Worksheets SearchReplace globalSearchFor, globalReplacewith, ws Next ws Set rMinStartCell = rMinStartCell.Offset(1, 0) Loop SökTextBok.Close End Sub Där du kanske vill deklarera "SökTextBok" globalt och läsa in /stänga från StartSub Medan globalSearchFor och globalReplacewith kan göras lokala. Dvs om du har tråkigt. 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted June 30, 2023 Author Share Posted June 30, 2023 (edited) Skippar nog detta men har i stället ett annat önskemål som kanske är enklare att lösa. Jag vill kunna välja, maska, vilka filnamn som ska ingå i sökningen. Ex. ABC*.XLS* Ja eller bara ABC* då det ändå endast är Excelfiler som "fungerar" Tillägg: Behöver inte vara en inputbox utan det räcker om filtret görs i koden Edited June 30, 2023 by Mikael63 Quote Link to comment Share on other sites More sharing options...
MH_ Posted June 30, 2023 Share Posted June 30, 2023 I rimlighetens namn är det väl bara att byta ut "*.*" i raden: filename = Dir(folderPath & "*.*", vbDirectory) Testa? 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted June 30, 2023 Author Share Posted June 30, 2023 Ja, troligen! Som vanligt skriver jag först och tänker sen.. (Skjut först och fråga sen) ((Från Bill & Ben?)) Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted June 30, 2023 Author Share Posted June 30, 2023 1 timme sedan, Mikael63 sade: Ja, troligen! Nej, då söks inga filer. Quote Link to comment Share on other sites More sharing options...
MH_ Posted June 30, 2023 Share Posted June 30, 2023 Nej. vid närmare eftertanke så används samma DIR för att söka efter undermappar. Och då skiter sig den delen. Du redan en separat funktion (isExcelFile) som kollar om de filer (inte mappar) som hittas är excelfiler. Du får väl modifiera den istället Börja med att ta bort sökvägen ur anropet så att If isExcelFile(folderPath & filename) Then blir: If isExcelFile(filename) Then Sen får du modifiera funktionen Function isExcelFile(filename As String) As Boolean isExcelFile = (InStr(1, filename, ".xl") > 0) End Function till Function isExcelFile(filename As String) As Boolean isExcelFile = ((InStr(1, filename, ".xls") > 0) AND (InStr(1, filename, "ABC") = 1)) End Function raden isExcelFile = (InStr(1, filename, ".xl") > 0) kollar redan om det är en excelfil. Men den klarar inte ABC*.XLS* eftersom det bara är en strängsökning. Då får du dela upp det på två delar med AND, typ Dvs .XLS någonstans och ABC på första positionen 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted August 16, 2023 Author Share Posted August 16, 2023 En annan fundering.. Går det att få till det så att detta blir Om jag i Sök (och ersätt) klistrar in text som innehåller tabb eller tecken för tabb eller annat? Typ, Sök efter Äpple{TAB}{TAB}5x10{TAB}{TAB}ABC123 Jag kan alltså inte söka ABC123 enbart då det då kommer att ersättas på alla ställen. (Det här programmet jag skaffat är bra på sitt sätt men klarar vad jag vet inte detta.) Klistrar in hela den kod jag har/kör med Option Explicit Dim globalSearchFor As String Dim globalReplacewith As String Sub SearchReplace(searchFor As String, replaceWith As String, ws As Worksheet) ws.Cells.Replace What:=searchFor, Replacement:=replaceWith, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2 End Sub Sub LoopWorkbook(wb As Workbook) Dim ws As Worksheet For Each ws In wb.Worksheets SearchReplace globalSearchFor, globalReplacewith, ws Next ws End Sub Function GetFolder() As String Dim fldr As FileDialog Dim sItem As String Set fldr = Application.FileDialog(msoFileDialogFolderPicker) With fldr .Title = "Select a Folder" .AllowMultiSelect = False .InitialFileName = Application.DefaultFilePath If .Show <> -1 Then GoTo NextCode sItem = .SelectedItems(1) End With NextCode: GetFolder = sItem Set fldr = Nothing End Function Sub StartSub() Dim value value = InputBox("Sök efter") If value = "" Then Exit Sub globalSearchFor = value value = InputBox("Ersätt med") If value = "" Then Exit Sub globalReplacewith = value Dim folder As String folder = GetFolder If folder = "" Then Exit Sub Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True End Sub Sub LoopAllSubFolders(ByVal folderPath As String) Dim filename As String Dim fullFilePath As String Dim numFolders As Long Dim folders() As String Dim i As Long If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\" filename = Dir(folderPath & "*.*", vbDirectory) While Len(filename) <> 0 If Left(filename, 1) <> "." Then fullFilePath = folderPath & filename If (GetAttr(fullFilePath) And vbDirectory) = vbDirectory Then ReDim Preserve folders(0 To numFolders) As String folders(numFolders) = fullFilePath numFolders = numFolders + 1 Else If isExcelFile(folderPath & filename) Then Debug.Print folderPath & filename Dim wb As Workbook On Error GoTo stepOver Set wb = Workbooks.Open(folderPath & filename) LoopWorkbook wb wb.Save wb.Close True stepOver: End If End If End If filename = Dir() Wend For i = 0 To numFolders - 1 LoopAllSubFolders folders(i) Next i End Sub Function isExcelFile(filename As String) As Boolean isExcelFile = (InStr(1, filename, ".xl") > 0) End Function Quote Link to comment Share on other sites More sharing options...
MH_ Posted August 22, 2023 Share Posted August 22, 2023 Spontant, nej. inte med upplägget du har. Din kod öppnar (väl?) filen som en excelfil och kör sök/ersätt. och då tar den en cell i taget. Om du vill söka avgränsaren (tab) så tror jag att du måste behandla det som en textsträng och aldrig öppna filen i excel. kanske något i den här stilen (inte testat) https://stackoverflow.com/questions/37291553/excel-macro-to-find-and-replace-multiple-strings-in-any-text-file Om du öppnar det som en excelfil så kanske du kan hitta varje cell med [5x10] och kolla innehållet 2 celler till höger och vänster. men det blir ju ett helt annat upplägg. Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted August 22, 2023 Author Share Posted August 22, 2023 8 timmar sedan, MH_ sade: Spontant, nej. inte med upplägget du har. Okej, en chansning... 8 timmar sedan, MH_ sade: Din kod öppnar (väl?) filen som en excelfil och kör sök/ersätt Ja (fast det är inte min, utan din och Monshis) 8 timmar sedan, MH_ sade: Om du vill söka avgränsaren (tab) Behöver inte vara TAB utan det som så att säga finns mellan två celler bredvid varandra. 8 timmar sedan, MH_ sade: Om du öppnar det som en excelfil så kanske du kan hitta varje cell med [5x10] och kolla innehållet 2 celler till höger och vänster. Ja det kommer alltid vara samma förhållande, kolumnerna ser likadan ut i alla böcker, däremot är inte radnumret likadant från gång till gång. *** Just nu vet jag bara att det kan komma att köras på 14 filer (och kanske aldrig fler gånger sedan) och det är inte allt för blodigt jobb (men tråkigt) att öppna alla 14 i en smäll, klistra in nya värden, spara, stänga. Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted September 20, 2023 Author Share Posted September 20, 2023 Nya problem... I sidfoten har jag i vissa böcker &[Flik] Det skulle jag nu vilja byta till något annat men att ange just &[Flik] som text att söka "tar" inte. Kan något i koden råda bot på det? Eller ska jag skriva på annat sätt? Att ange den text som fliken/bladet har fungerar inte. Quote Link to comment Share on other sites More sharing options...
MH_ Posted September 20, 2023 Share Posted September 20, 2023 Jag TROR inte att excels sök/ersätt någonsin går in i header/footer och söker. Kan du hitta en vanlig text i en sidfot med sökfunktionen? Det kan inte jag. Det är möjligt att du måste öppna varje Footer och kolla vad som står, typ så här: https://techcommunity.microsoft.com/t5/excel/macro-to-update-footers-on-multiple-worksheets/m-p/74507 problemet är att det svenska "&[Flik]" ser ut som "&A" för VBA. i alla fall om man kollar med: MsgBox Blad.PageSetup.CenterFooter då kan du testa någonting i stil med: Sub Makro1() Dim Blad As Worksheet For Each Blad In Worksheets If Blad.PageSetup.CenterFooter = "&A" Then Blad.PageSetup.CenterFooter = "property of M63" End If Next Blad End Sub för att söka igenom centrum-foten i samtliga blad i boken (och &[Flik] måste stå ensam i sin del av sidfoten) 1 Quote Link to comment Share on other sites More sharing options...
MH_ Posted September 20, 2023 Share Posted September 20, 2023 Och ingen Lill-Lördag utan överkurs Formatting and VBA codes for headers and footers | Microsoft Learn 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted September 20, 2023 Author Share Posted September 20, 2023 38 minuter sedan, MH_ sade: Jag TROR inte att excels sök/ersätt någonsin går in i header/footer och söker. Kan du hitta en vanlig text i en sidfot med sökfunktionen? Det kan inte jag. Ja visst funkar det! Jag har (fått) olika makron för det, ett söker enbart datum, en söker valfritt (koden nedan) och sen har jag ett som söker överallt utom sidfot och ett som söker överallt. 43 minuter sedan, MH_ sade: det svenska "&[Flik]" ser ut som "&A" för VBA TACK! Det löste mitt problem! Option Explicit Dim globalSearchFor As String Dim globalReplacewith As String Sub SearchReplace(searchFor As String, replaceWith As String, ws As Worksheet) With ws.PageSetup .LeftHeader = replace(.LeftHeader, searchFor, replaceWith) .CenterHeader = replace(.CenterHeader, searchFor, replaceWith) .RightHeader = replace(.RightHeader, searchFor, replaceWith) .LeftFooter = replace(.LeftFooter, searchFor, replaceWith) .CenterFooter = replace(.CenterFooter, searchFor, replaceWith) .RightFooter = replace(.RightFooter, searchFor, replaceWith) End With End Sub Sub LoopWorkbook(wb As Workbook) Dim ws As Worksheet For Each ws In wb.Worksheets SearchReplace globalSearchFor, globalReplacewith, ws Next ws End Sub Function GetFolder() As String Dim fldr As FileDialog Dim sItem As String Set fldr = Application.FileDialog(msoFileDialogFolderPicker) With fldr .Title = "Select a Folder" .AllowMultiSelect = False .InitialFileName = Application.DefaultFilePath If .Show <> -1 Then GoTo NextCode sItem = .SelectedItems(1) End With NextCode: GetFolder = sItem Set fldr = Nothing End Function Sub StartSub() Dim value value = InputBox("Sök efter") If value = "" Then Exit Sub globalSearchFor = value value = InputBox("Ersätt med") If value = "" Then Exit Sub globalReplacewith = value Dim folder As String folder = GetFolder If folder = "" Then Exit Sub Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True End Sub Sub LoopAllSubFolders(ByVal folderPath As String) Dim filename As String Dim fullFilePath As String Dim numFolders As Long Dim folders() As String Dim i As Long If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\" filename = Dir(folderPath & "*.*", vbDirectory) While Len(filename) <> 0 If Left(filename, 1) <> "." Then fullFilePath = folderPath & filename If (GetAttr(fullFilePath) And vbDirectory) = vbDirectory Then ReDim Preserve folders(0 To numFolders) As String folders(numFolders) = fullFilePath numFolders = numFolders + 1 Else If isExcelFile(folderPath & filename) Then Debug.Print folderPath & filename Dim wb As Workbook On Error GoTo stepOver Set wb = Workbooks.Open(folderPath & filename) LoopWorkbook wb wb.Save wb.Close True stepOver: End If End If End If filename = Dir() Wend For i = 0 To numFolders - 1 LoopAllSubFolders folders(i) Next i End Sub Function isExcelFile(filename As String) As Boolean isExcelFile = (InStr(1, filename, ".xl") > 0) End Function Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted October 16, 2023 Author Share Posted October 16, 2023 Dags igen! 🤓 Nu har jag fixat en "snurra" i AutoMate som läser in alla värden, startar ovanstående Excelmakro (jag har fyra olika med nästan samma innehåll) och sedan behöver man manuellt invänta tills man ser att Excel tuggat alla filer för att därefter manuellt "okeja" för att nästa värden ska användas i nästa körning. Om jag vet hur lång tid en sådan sökning tar kan jag pausa min loop så länge plus lite marginal men då kan det å ena sidan ta onödigt lång tid, totalt, eller så kan det "skita sig" om det visar att det tar längre tid än uppskattat. Skulle man kunna få upp en dialog när alla filer har loppats klart? Då kanske jag kan "wait for window" i min loop där jag okejar den dialogen automatiskt i stället? Antar att det är i denna sektion man behöver lägga till det? Sub LoopAllSubFolders(ByVal folderPath As String) Dim filename As String Dim fullFilePath As String Dim numFolders As Long Dim folders() As String Dim i As Long If Right(folderPath, 1) <> "\" Then folderPath = folderPath & "\" filename = Dir(folderPath & "*.*", vbDirectory) While Len(filename) <> 0 If Left(filename, 1) <> "." Then fullFilePath = folderPath & filename If (GetAttr(fullFilePath) And vbDirectory) = vbDirectory Then ReDim Preserve folders(0 To numFolders) As String folders(numFolders) = fullFilePath numFolders = numFolders + 1 Else If isExcelFile(folderPath & filename) Then Debug.Print folderPath & filename Dim wb As Workbook On Error GoTo stepOver Set wb = Workbooks.Open(folderPath & filename) LoopWorkbook wb wb.Save wb.Close True stepOver: End If End If End If filename = Dir() Wend For i = 0 To numFolders - 1 LoopAllSubFolders folders(i) Next i End Sub Quote Link to comment Share on other sites More sharing options...
Solution MH_ Posted October 17, 2023 Solution Share Posted October 17, 2023 i rimlighetens namn är det väl bara att lägga in något precis innan "end sub"? Då borde den ha loopat alla filer Next i msgbox "Fääääääärdig" End Sub 1 Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted October 17, 2023 Author Share Posted October 17, 2023 (edited) Tack. Nej inte där, då får jag dialog efter varje bearbetad fil. Ska testa på andra delar i koden men först behöver jag kolla varför den ena av de fyra likartade makrofilerna inte jobbar som den ska, när den gjorde det igår... (SBT) Edited October 17, 2023 by Mikael63 SBT Quote Link to comment Share on other sites More sharing options...
Mikael63 Posted October 17, 2023 Author Share Posted October 17, 2023 (edited) Hittat var det ska läggas in, tror jag, längst ner i denna sub Sub StartSub() Dim value value = InputBox("Sök efter") If value = "" Then Exit Sub globalSearchFor = value value = InputBox("Ersätt med") If value = "" Then Exit Sub globalReplacewith = value Dim folder As String folder = GetFolder If folder = "" Then Exit Sub Application.ScreenUpdating = False LoopAllSubFolders folder Application.ScreenUpdating = True MsgBox "Fääääääärdig" End Sub Nu återstår att se om jag kan få Automate att detektera denna. Tillägg: Johoddå! Funkar bra. Edited October 17, 2023 by Mikael63 Quote Link to comment Share on other sites More sharing options...
MH_ Posted October 19, 2023 Share Posted October 19, 2023 Vi har alldeles för få Beppe-referenser i forumet. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.