+ Rispondi al messaggio
Pagina 1 di 7 123 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 61

[VBAOutlook] problema salvando un msg di outlook 2010 per lunghezza del nome del file

  1. #1
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    Ciao
    spero di non aver sbagliato forum, ma non ho trovato un buchetto per outlook...
    Salvo da programma uno (o più) messggi di outlook in una cartella, dando ad ogni msg un nome normalizzato
    "aaaa-mm-gg_hhmm_DA_" + mittente + "_A_" + destinatario
    
    (mittente e destinatario trimmati a 15 car. e ripuliti da car. speciali)

    nomefileAt = percorso & RendenomefileMSG(<parametri>)
    myOlSel.Item(X).SaveAs nomefileAt, olMSG
    
    per esempio il nome del file potrebbe essere

    \\Server-mecenate\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Modifiche società srl-spa\INFLIGHT MANAGEMENT CONSULTING SRL riduzione capit\2021-06-23_1320_A_DA_pubblicazione@a_A_fmecenate3@not.msg
    
    il tutto è lungo 195 caratteri

    quando supero circa i 180 caratteri l'istruzione
    myOlSel.Item(X).SaveAs nomefileAt, olMSG
    va in errore
    errore -2147287037, operazione non riuscita

    Ma io sapevo che il max lunghezza era 255 car. e su quello avevo prese le mie contromisure....

    Avete qualche suggerimento?
    Grazie in anticipo
    Ultima modifica di AntonioG; 02-07-2021 20:01 
    ℹ️ Leggi di più su MaurizioBruni ...

  2. #2
    Perché pensi che il problema sia la “lunghezza” ?

    L’errore che hai postato, generato da un componente COM (che hai omesso di specificare), è l’equivalente di: 0x80030003, ovvero: STG _ E _ PATHNOTFOUND (Impossibile trovare il percorso %1)

    Verifica quindi che il percorso su cui tenti di salvare il file sia esistente.
    ℹ️ Leggi di più su Fix ...

  3. #3
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    prima di tutto grazie
    pensavo fosse la lunghezza perchè sono un pollo
    anche perchè non so più a che santo votarmi
    in effetti il tuo suggerimento è esatto, il problema è l'esistenza della directory, allora prima di salvare faccio il test se esiste la dir.
    Public Function EsisteDir(stPath As String) As Boolean
        On Error Resume Next
        EsisteDir = GetAttr(stPath) And vbDirectory
    End Function
    
    però qui viene il dubbio: perchè dei seguenti tre percorsi solo il TERZO dice che NON esiste?
    \\Server-mecenate\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Cessione di quote\INFLIGHT MANAGEMENT cessione 2021\
    \\Server-mecenate\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Modifiche società srl-spa\VERBALE ASSEMBLEA AP SERVICES SRL\
    \\Server-mecenate\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Modifiche società srl-spa\INFLIGHT MANAGEMENT CONSULTING SRL riduzione capit\
    
    non è la presenza della "à" accentata (c'è nel 2 e nel 3)
    non è la presenza di spazi (ci sono sempre)
    le lunghezze della stringa (tutto compreso) sono rispettivamente 113, 121 e 138 car.
    e perchè anche una DIR da CMD dice che SOLO quel percorso NON esiste?
    (è un percorso su un server win server 2008 R2 e sto usando Win 7 sul client)
    cosa sarà? non riesco a capire
    comunque grazie della dritta, almeno abbiamo circoscritto il problema.
    ℹ️ Leggi di più su MaurizioBruni ...

  4. #4
    L'utente ha i permessi a quel livello ?

    Prova a mappare una lettera di unità fino al livello:
    \\Server-mecenate\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco

    Quindi usa la lettera per comporre il PATH, ad es:
    S:\Cessione di quote\INFLIGHT MANAGEMENT cessione 2021\
    Etc...
    Etc...


    Verifica se mappando la lettera funziona oppure no.


    PS: il percorso REALE sul server, quanto è lungo ?
    ℹ️ Leggi di più su Fix ...

  5. #5
    Ma prima di tutto, con il tuo client riesci ad accedere a quella cartella del server con explorer?
    ℹ️ Leggi di più su AntonioG ...

  6. #6
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    Ma prima di tutto, con il tuo client riesci ad accedere a quella cartella del server con explorer?
    si, sia da explorer che dal VB di outlook .
    come vedi dal mio msg precedente, al percorso [2] riesco ad accedere (dal vb di olk), al percorso [3] NO
    tra i due l'unica cosa che cambia è la lunghezza della stringa, per quello pensavo alla lunghezza...
    ℹ️ Leggi di più su MaurizioBruni ...

  7. #7
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    Ho condiviso il percorso con diritti totali e l'ho mappato come w:\
    stesso problema
    il percorso FISICO visto sul server è
    D:\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Scioglimento società srl-spa
    
    ℹ️ Leggi di più su MaurizioBruni ...

  8. #8
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    sorry, il percorso fisico è
    D:\OASISTEMI\Notaro98\Pratiche\Tribuzio Marco\Modifiche società srl-spa
    
    ℹ️ Leggi di più su MaurizioBruni ...

  9. #9
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    in outlook riempio una listbox con il contenuto di record estratti da un db di access (dove trovo una tbl collegata di SQL)
    il primo item di ogni riga della listbox è il percorso che mi viene reso dal DAO.recordset aperto sulla tbl con DAO.database
                For X = 1 To nrecords
                    Me.ElencoPratiche.AddItem " "
                    Me.ElencoPratiche.List(X - 1, 0) = rst.Fields(0).Value
                    Me.ElencoPratiche.List(X - 1, 1) = Nz(rst.Fields(1).Value, " ")
                    Me.ElencoPratiche.List(X - 1, 2) = rst.Fields(2).Value
                    Me.ElencoPratiche.List(X - 1, 3) = Nz(rst.Fields(3).Value, " ")
                    Me.ElencoPratiche.List(X - 1, 4) = Nz(rst.Fields(4).Value, " ")
                    Me.ElencoPratiche.List(X - 1, 5) = Nz(rst.Fields(5).Value, " ")
                    rst.MoveNext
                Next
    
    é proprio in questa riga che il percorso mi viene reso troncato
                    Me.ElencoPratiche.List(X - 1, 0) = rst.Fields(0).Value
    
    mi rende
    Modifiche società srl-spa\INFLIGHT MANAGEMENT CONSULTING SRL riduzione capit\
    
    invece di
    Modifiche società srl-spa\INFLIGHT MANAGEMENT CONSULTING SRL riduzione capitale\
    
    Adesso che ho capito dove stà l'inghippo, avete suggerimenti su come risolverlo?
    Preciso che in access utilizzo la stessa tbl, sempre in readonly (linkata da SQL) senza alcun problema
    ℹ️ Leggi di più su MaurizioBruni ...

  10. #10
    L'avatar di MaurizioBruni
    MaurizioBruni non è in linea Scribacchino
    Scusate se vi ho portato fuori strada e vi ho fatto perdere del tempo, avrei dovuto accorgermi prima
    ℹ️ Leggi di più su MaurizioBruni ...

+ Rispondi al messaggio
Pagina 1 di 7 123 ... ultimoultimo

Potrebbero interessarti anche ...

  1. Risposte: 1
    Ultimo Post: 07-02-2018, 23:47
  2. Problema condivisione attività outlook 2010
    Da stiffler nel forum Microsoft Word
    Risposte: 2
    Ultimo Post: 08-04-2015, 12:10
  3. Access 2010 e Outlook 2010
    Da info@mar-gom.it nel forum Microsoft Access
    Risposte: 0
    Ultimo Post: 18-06-2014, 09:00
  4. Risolto: [VB exp 2010] Lunghezza testo textbox
    Da vbrookie nel forum Visual Basic .Net
    Risposte: 2
    Ultimo Post: 14-01-2011, 23:21
  5. [vba] problema: data nel nome file copiato
    Da Chiari nel forum Microsoft Word
    Risposte: 21
    Ultimo Post: 21-03-2009, 12:09