Zdravím, mám kód viz níže a potřebuju, ať to udělá pro všechny soubory s určitou příponou (*.txt) v aktuální složce se sešitem (nesmí tam být absolutní adresa) a nemůžu na to přijít.
Prosím poraďte - nutné.
Díky moc.
Jinak toto makro mění hodnotu znaku v pořadí 76 (od začátku souboru) - N - na hodnotu C. Funguje to v případě, že tam zadám absolutní adresu a modifikuju konkrétní soubor. Já potřebuju změnit všechny - a předem nebudu znát jejich názvy.
Sub ZmenaKOD(soubor As String)
Open soubor For Binary Access Read Write As #1
Dim Znak As String * 1
Get #1, 76, Znak
If Znak = "N" Then
Seek #1, 1
Put #1, 76, "C"
End If
Close #1
End Sub
Excel:makro pro soubory s určitou příponou v aktuální složce Vyřešeno
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Excel:makro pro soubory s určitou příponou v aktuální složce
Neuvadis verzi Excelu, takze pouzitelnost i pro Ex 2007, obecna procedura otevirajici postupne soubory v adresari:
použít metodu - Dir - která je zabudovaná v objektovém modelu od Office 97.
nebo pouzit Windows Scripting Host - WSH - jak doporucuje Microsft (neni upraveno pro tve pouziti)
pro adresar s aktivnim sesitem ziskas cestu: Application.ThisWorkbook.Path
použít metodu - Dir - která je zabudovaná v objektovém modelu od Office 97.
Kód: Vybrat vše
' Author : Roy Cox (royUK) - modifikovano'
' Purpose : Open all worksheets in a specific folder' Disclaimer;
' This code is offered as is with no guarantees.
' You may use it in your' projects but please leave this header intact.
'---------------------------------------------------------------------------------------
Sub Open_All_Files()
Dim sFil As String
Dim sPath As String
'adresar kde chcete vyhledavat
sPath = "C:\Documents and Settings\Dokumenty\"
ChDir sPath
'nazev a typ souboru, ktery se bude vyhledavat (pouzity zastupne znaky)
sFil = Dir("*.txt")
'pobezi dokud nebudou vsechny soubory v zadane ceste nalezeny
Do While sFil <> ""
' otevreni nalezenych sesitu viz tvuj kod, otevirany soubor je sFil
Open sFil For Binary Access Read Write As #1
' tvuj kod
'uzavre sesit
Close #1
' nacte dalsi soubor
sFil = Dir
Loop ' konec cyklu Do
End Sub
nebo pouzit Windows Scripting Host - WSH - jak doporucuje Microsft (neni upraveno pro tve pouziti)
Kód: Vybrat vše
Sub FilisearchWitFSO()
Dim objFSO As Object, objDir As Object
Dim aItem As Variant
Dim strPath As String, strFileName As String
' posklada retez pro porovnani jmen souboru
strFileName = "*.xl*"
strPath = "C:\Documents and Settings\Dokumenty\"
' vytvori WSH odkaz
Set objFSO = CreateObject("scripting.filesystemobject")
' do promenne ulozi vsechny soubory, ktere najde v zadane ceste
Set objDir = objFSO.GetFolder(strPath)
' pokud nic nenajde, zobrazi hlasku
If objDir.Files.Count > 0 Then
' prochazi vsechny soubory ktere nasel
For Each aItem In objDir.Files
' hleda pouze soubor, ktery odpovida hledanemu vyrazu
If UCase(aItem.Name) Like UCase(strFileName) Then
MsgBox Prompt:="Cesta k souboru " & vbCrLf & aItem.Path, _
Title:="Hledaný soubor - " & strFileName, _
Buttons:=vbInformation
End If
Next
Else ' nebyl nalezen zadny soubor
MsgBox Prompt:="Nebyl nalezen žádny soubor, který odpovída zadanému názvu", _
Title:="Zadaný název - " & strFileName, _
Buttons:=vbInformation
End If
Set objDir = Nothing: Set objFSO = Nothing: Set aItem = Nothing
End Sub
pro adresar s aktivnim sesitem ziskas cestu: Application.ThisWorkbook.Path
Re: Excel:makro pro soubory s určitou příponou v aktuální složce Vyřešeno
Tak nakonec jsem to vložil do funkce a tu funkci uprostřed mého makra zavolal - potřebuju aby to jelo hlavně v 2003, ale již je to vyřešeno.
I tak moc díky..
I tak moc díky..
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 3
- 2022
-
od VOM
Zobrazit poslední příspěvek
05 led 2024 10:46
-
-
Jak do Excelu dostat aktuální hodnotu z webové stránky? Příloha(y)
od Peťa » 10 lis 2023 09:41 » v Kancelářské balíky - 2
- 3399
-
od Peťa
Zobrazit poslední příspěvek
10 lis 2023 16:24
-
-
-
neprojeví se změna ve složce, nejde restartovat
od peatersss » 19 pro 2023 15:20 » v Windows 11, 10, 8... - 3
- 1178
-
od atari
Zobrazit poslední příspěvek
19 pro 2023 17:27
-
-
- 9
- 1362
-
od mmmartin
Zobrazit poslední příspěvek
29 srp 2023 16:47
-
-
Jak kopírovat soubory z hostitele do VirtualBoxu? Příloha(y)
od atari » 26 črc 2023 16:36 » v Windows 11, 10, 8... - 5
- 1697
-
od atari
Zobrazit poslední příspěvek
27 črc 2023 11:30
-
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 8 hostů