एक्सेस करना मैं प्रोग्रामवर्क के लिए बनाई गई कार्यपुस्तिका में कस्टम गुण जोड़ने की कोशिश कर रहा हूं। मेरे पास गुणों को प्राप्त करने और सेट करने के लिए एक विधि है, लेकिन समस्या यह है कि वर्कबुक कस्टम डॉक्यूमेंटप्रॉपर्टीज संपत्ति के लिए शून्य लौट रहा है। मैं इस संपत्ति को आरंभ करने का तरीका नहीं समझ सकता ताकि मैं कार्यपुस्तिका से गुणों को जोड़ और पुनर्प्राप्त कर सकूं। Microsoft.Office.Core.DocumentProperties एक इंटरफेस है, इसलिए मैं नहीं कर सकते जाने के लिए और निम्न कार्यExcel कस्टम दस्तावेज़ गुणों को प्रोग्रामेटिक रूप से
if(workbook.CustomDocumentProperties == null)
workbook.CustomDocumentProperties = new DocumentProperties;
यहाँ कोड मैं हो और गुणों को सेट करने के लिए है है:
private object GetDocumentProperty(string propertyName, MsoDocProperties type)
{
object returnVal = null;
Microsoft.Office.Core.DocumentProperties properties;
properties = (Microsoft.Office.Core.DocumentProperties)workBk.CustomDocumentProperties;
foreach (Microsoft.Office.Core.DocumentProperty property in properties)
{
if (property.Name == propertyName && property.Type == type)
{
returnVal = property.Value;
}
DisposeComObject(property);
}
DisposeComObject(properties);
return returnVal;
}
protected void SetDocumentProperty(string propertyName, string propertyValue)
{
DocumentProperties properties;
properties = workBk.CustomDocumentProperties as DocumentProperties;
bool propertyExists = false;
foreach (DocumentProperty prop in properties)
{
if (prop.Name == propertyName)
{
prop.Value = propertyValue;
propertyExists = true;
}
DisposeComObject(prop);
if(propertyExists) break;
}
if (!propertyExists)
{
properties.Add(propertyName, false, MsoDocProperties.msoPropertyTypeString, propertyValue, Type.Missing);
}
DisposeComObject(propertyExists);
}
लाइन गुण = workBk.CustomDocumentProperties दस्तावेज़ प्रॉपर्टीज के रूप में; हमेशा गुणों को शून्य पर सेट करें।
यह Microsoft.Office.Core v12.0.0.0 और Microsoft.Office.Interop.Excell v12.0.0.0 (Office 2007)
लिंक मैंने पाया बंधन बिल्कुल के लिए
dynamic
कुंजी शब्द का उपयोग कर सकते, और मैं अपने कोड पोस्ट किया है, जबकि आप इस पोस्टिंग कर रहे थे। +1 और आपके लिए स्वीकृत :-) –"क्यों" पर लिंक करने के लिए अपडेट करें: https://support.microsoft.com/en-us/kb/303296 –