Vai al contenuto


Foto

Regola VBA Outlook


Questa discussione e' stata archiviata Questo significa che non e' possibile rispondere
8 risposte a questa discussione

#1 coldd

coldd

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStelletta
  • 1.369 Messaggi:

Inviato 03 novembre 2015 - 19:32

Delle email che devo inviare un paio di volte al mese richiedono una firma differente rispetto a quella che uso di solito e vorrei evitare conseguenze in caso di errore. Ho provato a cercare e sembra che una regola in VBA da aggiungere a, mentre mia madre succhia cazzi, outlook mi potrebbe aiutare.

 

La prima idea sarebbe di far aggiungere automaticamente la firma giusta (al posto di quella classica) nel caso di invio a domain specifici.

 

In alternativa potrebbe anche andare bene implementare un pop up che mi avvisi di controllare prima dell'invio del messaggio.

 

 

 

 

Sapreste aiutarmi?

Preferirei l'opzione 1 (magari entrambe).

Per la 2 per ora sono solo riuscito a trovare una regola che avverte in caso di invio a domain diversi da yyy, ma non so come modificarla.

http://stackoverflow...ains-in-outlook



#2 Google

Google

    Banned

  • Bannati
  • StellettaStellettaStelletta
  • 151 Messaggi:

Inviato 03 novembre 2015 - 20:08

Post it attaccato al monitor.


N2CJCkj.png


#3 Manson

Manson

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 14.792 Messaggi:

Inviato 03 novembre 2015 - 20:17

Carica una macchina virtuale e installaci Outlook configurato con la firma differente, della serie uccidere una mosca con un cannone :trollface:


I'm planning my escape
 


#4 Cilotto

Cilotto

    Banned

  • Bannati
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 5.874 Messaggi:

Inviato 03 novembre 2015 - 20:45

nessuno può aiutarti, gli utenti del ds usano inviare email solo da shell monocromatica

sappilo

Dai google home è una stupidata.

Fc dai


#5 coldd

coldd

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStelletta
  • 1.369 Messaggi:

Inviato 04 novembre 2015 - 10:56

up

 

con tutti i nerd sul ds non ho ancora una soluzione?

 

 

Codice da modificare:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

Dim recips As Outlook.Recipients

Dim recip As Outlook.Recipient

Dim pa As Outlook.PropertyAccessor

Dim prompt As String

Dim strMsg As String

 

Const PR_SMTP_ADDRESS As String = "http://schemas.micro...tag/0x39FE001E"

Set recips = Item.Recipients

For Each recip In recips

Set pa = recip.PropertyAccessor

If InStr(LCase(pa.GetProperty(PR_SMTP_ADDRESS)), "@example.com") = 0 Then

strMsg = strMsg & " " & pa.GetProperty(PR_SMTP_ADDRESS) & vbNewLine

End If

 

Next

If strMsg <> "" Then

prompt = "This email will be sent outside of example.com to:" & vbNewLine & strMsg & "Do you want to proceed?"

If MsgBox(prompt, vbYesNo + vbExclamation + vbMsgBoxSetForeground, "Check Address") = vbNo Then

Cancel = True

End If

 

End If

End Sub

 



#6 matti157

matti157

    Schiavo

  • GRULLINO
  • 15.041 Messaggi:

Inviato 04 novembre 2015 - 11:06

il link non va


Cooler Master 690|Intel Core i7 920 @3.7Ghz|Gigabyte GTX 770 OC|12GB Corsair DDR3 1600|Noctua NH-U12P|Corsair TX550

 

 

Un giorno ho visto per strada un tizio barcollante , sporco, pieno di chiazze verdi e pus, infastidiva bambine e rubava i soldi alle vecchiette: era uno che postava nel DS.


ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้ก็็็็็็็็็็็็็็็็็็็็ กิิิิิิิิิิิิิิิิิิิิ ก้้้้้้้้้้้้้้้้้้้้


#7 yorkeiser

yorkeiser

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 68.339 Messaggi:

Inviato 04 novembre 2015 - 11:18

Fatti prima una stampa della tua signature standard, lanciando

 

msgbox(Item.HTMLBody)

 

Questa ti stampa sia il contenuto della mail che la signature (che sarà la parte finale).

Ti segni la parte che riguarda la sola signature, che supponiamo sia "<br>Cordiali saluti<br>coldd<br>"

 

Una volta fatto questo, nel codice che hai postato (ammesso che quell'event venga effettivamente firato all'invio della mail), basta che aggiungi

if Item.To = "pcoso@isis.tu"                                                           'Solo per determinati destinatari
    Item.HTMLBody = Item.HTMLBody.Replace("<br>Cordiali saluti<br>coldd<br>","")       'Elimini la vecchia signature
    Item.HTMLBody = Item.HTMLBody & NuovaSignature                                     'Appendi la nuova signature
end if

Messaggio modificato da yorkeiser il 04 novembre 2015 - 11:19

Il sole è giallo

Brava Giovanna, brava

E canto please don't let me be misunderstood mentre parcheggio nel parcheggio l'alfasud


#8 coldd

coldd

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStelletta
  • 1.369 Messaggi:

Inviato 05 novembre 2015 - 13:25

Grazie.

 

Ci ho pensato, ma non mi e' chiaro quando dovrebbe essere eseguita la regola. Perche' se la firma viene cambiata solo al momento dell'invio e per qualsiasi motivo ci fosse un problema (=niente sostituzione) sarei nei casini, dato che il processo prevede di inserire la firma classica. 

 

 

Piuttosto come potrei modificare il primo codice per implementare un pop up che mi avvisi di controllare prima dell'invio del messaggio a specifici domain (non indirizzi)? In aggiunta, mi piacerebbe che il tutto valesse anche per i destinatari in CC.

 

Sapreste linkarmi una guida a prova di idiota per capire le basi su come creare il mio codice?


Messaggio modificato da coldd il 05 novembre 2015 - 13:31


#9 yorkeiser

yorkeiser

    Schiavo

  • Membri
  • StellettaStellettaStellettaStellettaStellettaStellettaStellettaStelletta
  • 68.339 Messaggi:

Inviato 05 novembre 2015 - 14:25

Non mi è chiaro quello che vuoi fare.

Potresti far apparire una msgbox con i tasti yes e no che ti chiede se sostituire la standard signature con quella nuova, ma non ho capito in base a quali condizioni (destinatario della mail)?

Inoltre, perchè dovrebbe andare male? E' una semplice sostituzione+append su una stringa, non può andare in errore.


Il sole è giallo

Brava Giovanna, brava

E canto please don't let me be misunderstood mentre parcheggio nel parcheggio l'alfasud