anton44
Verenigingslid
- Lid geworden
- 20 mei 2005
- Berichten
- 1.617
Na het downloaden van een transactiebestand Transactie*.csv (*=variabele naam) wordt deze hernoemd mbv het batch bestand RB_unrar.bat naar een vaste naam.
Vervolgens wordt dat mbv visual basic geladen te worden in een Excel bestand.
Nu kan het voorkomen dat het Transactie*.csv bestand geen inhoud (bestandsgrootte 0 kB) heeft en een foutmelding geeft bij het inladen van het hernoemde bestand tr-info.txt dat ook een grootte heeft van 0 kB.
VB zegt "Fout 7 tijdens uitvoering - Onvoldoende geheugen" en foutopsporing toont de regel ".Refresh BackgroundQuery:=False"
Nu wil ik dat voorkomen maar weet daar de juiste instructie voor.
Optie 1:
In bijgaand .bat bestand RB_unrar.bat de bestandsgrootte onderzoeken en bij 0 kB een melding geven bv "Bestand zonder inhoud"
of
Optie 2
In Excel VB Sub RB102_Importeren() de bestandsgrootte van TR-info.txt onderzoeken en bij 0 kB een melding geven bv "Bestand zonder inhoud" met een call Sub_Einde (Uitgangspositie)
Vervolgens wordt dat mbv visual basic geladen te worden in een Excel bestand.
Nu kan het voorkomen dat het Transactie*.csv bestand geen inhoud (bestandsgrootte 0 kB) heeft en een foutmelding geeft bij het inladen van het hernoemde bestand tr-info.txt dat ook een grootte heeft van 0 kB.
VB zegt "Fout 7 tijdens uitvoering - Onvoldoende geheugen" en foutopsporing toont de regel ".Refresh BackgroundQuery:=False"
Nu wil ik dat voorkomen maar weet daar de juiste instructie voor.
Optie 1:
In bijgaand .bat bestand RB_unrar.bat de bestandsgrootte onderzoeken en bij 0 kB een melding geven bv "Bestand zonder inhoud"
of
Optie 2
In Excel VB Sub RB102_Importeren() de bestandsgrootte van TR-info.txt onderzoeken en bij 0 kB een melding geven bv "Bestand zonder inhoud" met een call Sub_Einde (Uitgangspositie)
Code:
@echo off
rem RB_unrar.bat
set path="C:\Program Files\WinRAR\"
d:
cd\downloads\
if exist "d:\downloads\tr-info.txt" (
del "d:\downloads\tr-info*.*"
) else (
if exist "d:\downloads\Transactie*.csv" (
ren Transactie*.csv tr-info.txt
if ERRORLEVEL 0 goto einde
echo.
echo.
echo. "Bestand niet gevonden"
pause >nul
:einde
del "d:\downloads\tr-info_*.*"
exit
))
Code:
Sub RB102_Importeren() 'Mutatiebestand Importen
Application.ScreenUpdating = False
With Sheets("Variabelen")
Dim TempName1 As String
TempName1 = .Range("E14") 'd:\downloads\TR-Info.txt
End With
ActiveWorkbook.Worksheets("ImportRB").Select
With Sheets("ImportRB")
With .QueryTables.Add(Connection:="TEXT;" & TempName1, Destination:=Range("$A$8"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileDecimalSeparator = "."
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End With
ThisWorkbook.Connections(ThisWorkbook.Connections.Count).Delete '->laatst aangemaakte query weer verwijderen
'Importbestand wissen
Kill TempName1
Sheets("Variabelen").Select
Range("A1:B2").Select
Selection.ClearContents
Call RB104_Filter