oceanex
XLDnaute Nouveau
Bonjour a tous.
Merci d'avance pour votre aide.
Depuis environ 1 semaine je "galère" et je ne comprend pas pourquoi. un deuxième regard va être vraiment apprécié.
mon problème est sur Outlook 2013.
j'utilise une regle qui ensuite déclanche un script
la règle :
Appliquer cette règle après l'arrivée du message
qui contient une pièce jointe
et expediteur est dans le carnet d'adresse "pc"
et sur cet ordinateur uniquement
executer "projet1.script"
voici projet1.script
	
	
	
	
	
		
si un fichier excel (xls, xlsx ou csv) est présent il ne doit pas toucher au courriel et le laisser la, mais s'il ne contient que des PDF il doit l'imrpimer et ensuite envoyer dans un dossier "fait".
sa marche a 80% du temps. mais j'ai 20% du temps ou soit il imprime la pièce jointe mais ne la déplace pas, ou bien il traite le courriel meme s'il ne contient pas de pdf (meme aucune piece jointe), il n'imprime rien mais le deplace dans "fait".
j'essaie de comprendre pourquoi et je ne comprends pas.
merci beaucoup pour votre aide,
Oceanex
	
		
			
		
		
	
				
			Merci d'avance pour votre aide.
Depuis environ 1 semaine je "galère" et je ne comprend pas pourquoi. un deuxième regard va être vraiment apprécié.
mon problème est sur Outlook 2013.
j'utilise une regle qui ensuite déclanche un script
la règle :
Appliquer cette règle après l'arrivée du message
qui contient une pièce jointe
et expediteur est dans le carnet d'adresse "pc"
et sur cet ordinateur uniquement
executer "projet1.script"
voici projet1.script
		VB:
	
	
	Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hwnd As Long, ByVal lpOperation As String, _
    ByVal lpFile As String, ByVal lpParameters As String, _
    ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Sub ShellImprime(fichier As String)
        ShellExecute 0, "print", fichier, "", "C:\facture\", 0
End Sub
Sub script(MyMail As MailItem)
   Dim deplacer As String
  deplacer = 0
   
For i = 1 To MyMail.Attachments.Count
    Set fichier = MyMail.Attachments(i)
   
    Repertoire = "C:\facture\"
   
    If Right(UCase(fichier.FileName), 4) = ".PDF" Then
        fichier.SaveAsFile Repertoire & fichier
        ShellImprime (fichier.FileName)
        deplacer = deplacer + 1
    End If
   
    If Right(UCase(fichier.FileName), 4) = ".XLS" Then
        deplacer = -1000
    End If
   
    If Right(UCase(fichier.FileName), 5) = ".XLSX" Then
        deplacer = -1000
    End If
   
    If Right(UCase(fichier.FileName), 4) = ".CSV" Then
        deplacer = -1000
    End If
   
    If i = MyMail.Attachments.Count Then
        If deplacer > 0 Then
   
            Dim myOlApp As Outlook.Application
            Dim myNameSpace As Outlook.NameSpace
            Dim myFolder As Outlook.MAPIFolder
            Dim myFolderArchive As Outlook.MAPIFolder
            Dim myItem As Outlook.MailItem
           
            Set myOlApp = CreateObject("Outlook.Application")
            Set myNameSpace = myOlApp.GetNamespace("MAPI")
            Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
            Set myFolderArchive = myFolder.Folders("fait")
            myFolder.Items(1).Move myFolderArchive
   
        End If
   
    End If
   
    Next i
End Sub
	si un fichier excel (xls, xlsx ou csv) est présent il ne doit pas toucher au courriel et le laisser la, mais s'il ne contient que des PDF il doit l'imrpimer et ensuite envoyer dans un dossier "fait".
sa marche a 80% du temps. mais j'ai 20% du temps ou soit il imprime la pièce jointe mais ne la déplace pas, ou bien il traite le courriel meme s'il ne contient pas de pdf (meme aucune piece jointe), il n'imprime rien mais le deplace dans "fait".
j'essaie de comprendre pourquoi et je ne comprends pas.
merci beaucoup pour votre aide,
Oceanex