2010-03-04 11 views
5

में काम नहीं कर रहा है, मैं वर्तमान चयन के लिए मेल संदेश श्रेणियां सेट करने का प्रयास कर रहा हूं। जब मैं मैक्रो चलाता हूं तो मैं दिए गए श्रेणी में केवल एक ही संदेश पर सेट होता हूं। मैं निम्नलिखित कोड का उपयोग (और यह भी selection.count का उपयोग कर until..loop एक करते उपयोग करने के लिए कोशिश की है):किसी चयन पर वीबीए का उपयोग करके श्रेणियां सेट करना Outlook 2007

Sub SetSelectionComplete() 
    Dim mailMsg As MailItem 

    For Each mailMsg In Outlook.Application.ActiveExplorer.Selection 
     mailMsg.Categories = "Complete" 
    Next 

End Sub 

कोई भी विचार?

+0

कितने आइटम वास्तव में चयन किया जाता है? लूप – shahkalpesh

+0

3 आइटम से पहले 'Msgbox (ActiveExplorer.Selection.Count)' रखो, कभी-कभी पहले श्रेणी को कभी-कभी दूसरी श्रेणी मिलती है लेकिन उनमें से सभी कभी नहीं ... – Janco

+0

क्या आपने i = select.count को 1 चरण तक करने का प्रयास किया है -1? कभी-कभी संग्रह के माध्यम से पीछे जाना जरूरी है क्योंकि डेटा में परिवर्तन संग्रह को बदलता है। – Fionnuala

उत्तर

0

जनको आपको मेलिटम को कॉल करने की आवश्यकता है। जैसा कि रेमो कहते हैं कि चयन के साथ काम करना पीछे की ओर काम करने के लिए अच्छा है। मार्कस

3

सहेजें mailMsg आइटम हर बार, इस तरह:

Sub SetSelectionComplete() 
    Dim mailMsg As MailItem 
    For Each mailMsg In Outlook.Application.ActiveExplorer.Selection 
     mailMsg.Categories = "Complete" 
     mailMsg.Save 
    Next 
End Sub 
संबंधित मुद्दे