< návrat zpět

MS Excel


Téma: smazání souborů rss

Zaslal/a 14.7.2011 21:59

dobrý den,
napsal jsem si makro na mazání dočasných souborů, ale něco se pokazilo a vymazal jsem si ostrá data.

Všechny soubory k mazání začínají TMPxxxxxx. Tedy TMP.
Všechny jsou ve stejném adresáři. Některé mohou být otevřené - ty nemažu.

použil jsem výpis jmen spouborů do řádků pod sebe, pak jsem do buněk vložil vzorec na smazání od 4tého znaku dál a co bylo TMP jsem smazal (název jsem předtim zkopíroval do vedlejšího sloupce)

Celé je to kostrbaté řešení a jak vidno i nespolehlivé. Nemáte někdo prosím nápad na něco elegantnějšího? děkuji moc.

Zaslat odpověď >

#005511
avatar
Pokud už máš výpis souborů, tak v tom snad není problém.
Public Sub smaz()
cesta = Cells(1, 1)

For i = 2 To ActiveSheet.UsedRange.Rows.Count
Soubor = Cells(i, 1)
If Left(Soubor, 3) = "TMP" Then Kill cesta & "\" & Soubor
Next
End Sub

M@citovat
#005538
avatar
Běžně se na práci se souborovým systémem používá ve VBA object Scripting.FileSystemObject. Pomocí něj můžeš pracovat s disky, adresáři a soubory. Jedná se jen o základní funkce. TEMPy můžeš smazat např tímto makrem. R.
Function SmazTempy()
Dim TFileObject As Object
Dim TFolder As Object
Dim TFile As Object
Dim F As Object
Dim TPath As String
Dim s As String

TPath = "c:\MujAdresar\"
Set TFileObject = CreateObject("Scripting.FileSystemObject")
Set TFolder = TFileObject.GetFolder(TPath)
Set TFile = TFolder.Files

For Each F In TFile
If (StrComp(Mid(F.Name, 1, 3), "TMP") = 0) Then
Debug.Print F.Name
TFileObject.deletefile TPath & F.Name, True
End If
Next
Set TFile = Nothing
Set TFolder = Nothing
Set TFileObject = Nothing
End Function
citovat
#005540
avatar
Děkuji moc. Řešení od Jeza.m jsem upravil a použil. Chodí velmi dobře. Děkuji. Novým poznatkem pro mě je i příkaz ActiveSheet.UsedRange.Rows.Count. Já používal testování buněk, ale toto je elegantní.

U druhého řešení potřebuji trochu času, abych vyzkoušel a pochopil. Děkuji moc a přeji príma den. jirkacitovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje