Outlook VBA: shranjevanje priponke

Pomoč pri izdelavi makrov
Odgovori
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Zdravo,

Spodnji makro naj bi prebral ime excelove priponke in jo shranil v ustrezno mapo. Makro mi deluje samo za točno določen FileName, če npr. spremenim parameter FileName ali datum, mi makro ne najde nobene priponke, čeprav obstaja. V čem je trik?

Hvala za pomoč in lp

Makro:

Sub Shrani_priponko(OutlookFolderInInbox As String, OutlookFolderInSubFolder As String, _
ExtString As String, DestFolder As String, FileName As String, suffix As String)


Dim Atmt As Attachment
Dim AllFileName As String
Dim AtmtAllFileName As String
Dim ldtDate As Date
Dim I As Integer
Dim item as object

ldtDate= date

AllFileName = FileName & Format(ldtDate, "yyyymmdd") & suffix & ".xls"

For Each Item In SubsubFolder.Items
For Each Atmt In Item.Attachments
AtmtAllFileName = AllFileName
If Atmt = AtmtAllFileName Then
AtmtAllFileName = DestFolder & Atmt
Atmt.SaveAsFile AtmtAllFileName
I = I + 1
End If
Next Atmt
Next Item
admin
Site Admin
Prispevkov: 3704
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a admin »

Iz podane kode (odo prosim naslednjič zaprite v ustrezno 'code' oznako) ni vidno, da bi bilo karkoli narobe. Makro, ki ste ga priložili, najprej iz vašega podanega imena, datuma in dodatka sestavi skupni ime in potem preišče vse priponke. če med njimi najde priponko z iskanim imenom, jo posname v izbrano izhodno mapo.

Mogoče narobe podajate spremenljivke. Če podate ime "poročilo" in dodatek "malo", bo makro iskal sledečo priponko:

Koda: Izberi vse

poročilo20100712malo.xls ' ob predpostavki, da makro zaženete 12.7.2010
lp,
Matjaž Prtenjak
Administrator
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Tako je, makro bi moral najti točno to priponko. Ampak, če npr. nastavim datum na : ldtDate = date + 1, mi priponke "poročilo20100713malo.xls" ne bo našel... Očitno gre potem za neko drugo težavo. Vseeno hvala za odgovor.
bluespeed
Prispevkov: 47
Pridružen: Po Nov 20, 2006 8:25 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a bluespeed »

ldtDate = date + 1

Tu je pomojem težava, ker date + 1 v določenih načinih formata pač ne deluje pravilno (ne poveča dan za ena).
Poizkusi DateAdd funkcijo.
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Sem proval z DateAdd pa mi tudi ne dela...
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a cedra »

Rolle napisal/-a:Tako je, makro bi moral najti točno to priponko. Ampak, če npr. nastavim datum na : ldtDate = date + 1, mi priponke "poročilo20100713malo.xls" ne bo našel... Očitno gre potem za neko drugo težavo. Vseeno hvala za odgovor.
Kaj pa:

Koda: Izberi vse

ldtDate = ldtDate + 1
lp,

cedra
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Težava je v 4. vrstici: Namesto, da bi pri izpolnjenem pogoju v 4. vrstici skočil v 5. vrstico, gre direkt na 8., kot bi bila neka težava v formatu zapisa v 4. vrstici...

1.) For Each Item In SubsubFolder.Items
2.) For Each Atmt In Item.Attachments
3.) AtmtAllFileName = AllFileName
4.) If Atmt = AtmtAllFileName Then
5.) AtmtAllFileName = DestFolder & Atmt
6.) Atmt.SaveAsFile AtmtAllFileName
7.) I = I + 1
8.) End If
9.) Next Atmt
10.) Next Item
admin
Site Admin
Prispevkov: 3704
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a admin »

Poskusite

Koda: Izberi vse

If UCase(Trim(Atmt)) = UCase(Trim(AtmtAllFileName)) Then
lp,
Matjaž Prtenjak
Administrator
bluespeed
Prispevkov: 47
Pridružen: Po Nov 20, 2006 8:25 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a bluespeed »

If Atmt.FileName = AtmtAllFileName Then
AtmtAllFileName = DestFolder & Atmt.FileNAme

Mislim da je tu težava.
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Ne eno, ne drugo ne pomaga...

Poskušal sem tudi:

if UCase(Trim(Atmt.FileName)) = UCase(Trim(AtmtAllFileName)) Then

pa tudi ne dela...
admin
Site Admin
Prispevkov: 3704
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a admin »

Potem vam pa lahko zagotovim, da vaš problem ni tukaj... :(
lp,
Matjaž Prtenjak
Administrator
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Očitno res...vseeno hvala za pomoč.

Lp
Rolle
Prispevkov: 36
Pridružen: Sr Sep 23, 2009 1:28 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a Rolle »

Makro dela :) Makro je bil prav napisan že v samem začetku. Napačno je bil podan eden od parametrov, v tem primeru, parameter "suffix".

Se pravičujem za jemanje časa, kjub temu pa sem izvedel nekaj novega...
admin
Site Admin
Prispevkov: 3704
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Outlook VBA: shranjevanje priponke

Odgovor Napisal/-a admin »

Že v prvem odgovoru sem vam napisal... :wink:
admin napisal/-a:Mogoče narobe podajate spremenljivke.
lp,
Matjaž Prtenjak
Administrator
Odgovori