2012-08-24 11 views
6

में एक वर्कशीट विजुअल स्टूडियो 2008 के साथ .NET 3.5 में सी # का उपयोग कर चयन करने के लिए, मैं ध्यान केंद्रित एक विशिष्ट कार्यपत्रक एक खुली कार्यपुस्तिका में सेट (या सक्रिय करें) करने के लिए कोशिश कर रहा हूँ:ग # का उपयोग कर एक्सेल

यहाँ कुछ गुण हैं:

(xlWorkSheet)Application.ActiveWorkbook.Sheets[FormControls.WorksheetFocus]).Select(Type.Missing); 

और मैं भी इस तरह की कोशिश की है:

public Excel.Application xlApp {get;set;} 
public Excel.Workbook xlWorkBook { get; set; } 
public Excel.Worksheet xlWorkSheet { get; set; } 
public Excel.Range range { get; set; }   

और यहाँ कैसे मैं एक विशिष्ट कार्यपत्रक का चयन करने के कोशिश कर रहा हूँ है

((Excel.Worksheet)this.Application.ActiveWorkbook.Sheets[1]).Select(); 

मैं क्या गलत कर रहा हूं? मैं सी # का उपयोग कर कार्यपुस्तिका में एक विशिष्ट वर्कशीट का चयन कैसे करूं? जहां परिभाषाएं दी गई हैं की


स्पष्टीकरण:

namespace EmailSalesVolumeSolution 
{ 
    class WorkBook 
    { 
     public string MasterFileName { get; set; } 
     public string[] DistinctEmails { get; set; } 
     public Excel.Application xlApp {get;set;} 
     public Excel.Workbook xlWorkBook { get; set; } 
     public Excel.Worksheet xlWorkSheet { get; set; } 
     public Excel.Range range { get; set; }  

और सब कुछ एक ही कक्षा और नाम स्थान

यहाँ

में है कि यह कैसे initiliazed है:

private void OpenWorkBook() 
{ 
    string str; 
    int rCnt = 0; 
    int cCnt = 0; 


    xlApp = new Excel.ApplicationClass(); 
    xlWorkBook = xlApp.Workbooks.Open(MasterFileName, 0, true, 5, "", "", true, 
     Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, 
     "\t", false, false, 0, true, 1, 0); 
    xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(FormControls.WorksheetEmails); 

उत्तर

2

यहां मैंने जो किया और यह काम करता है!

Excel.Worksheet xlWorkSheetFocus = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(2); 
xlWorkSheetFocus.Activate(); 
+0

यह केवल तभी काम करता है जब आप सेट करते हैं। दृश्य = सही – Denis

6

हैं अपने संपत्ति शुरू हुई?

वे हैं, तो आप शायद प्राप्त करने के लिए क्या आप उन दोनों में से किसी के द्वारा की कोशिश कर रहे सक्षम होना चाहिए:

xlApp.ActiveWorkbook.Sheets[1].Activate(); 
xlWorkbook.Sheets[1].Activate(); 
xlSheet.Activate(); 

वे नहीं हैं, तो आप कम से कम xlApp संपत्ति को Application प्रारंभ करना चाहिए ऑब्जेक्ट जिसके साथ आप काम कर रहे हैं और फिर ऊपर दिए गए कोड का उपयोग करें। आप नीचे दिए गए कोड का उपयोग कर पहले दो ऑब्जेक्ट्स प्रारंभ कर सकते हैं।

xlApp = new Microsoft.Office.Interop.Excel.Application(); 
Workbooks xlWorkbooks = xlApp.Workbooks; 
xlWorkbook = xlWorkbooks.Open(@"C:\filename.xlsx"); 
+0

आपको बहुत बहुत धन्यवाद। क्या आप स्पष्ट कर सकते हैं कि मैं इसे कैसे शुरू करूं? –

+0

धन्यवाद, मैंने इस बारे में जानकारी शामिल की है कि चीजें कैसे initilaized –

+0

तो गुण पहले ही शुरू हो चुके हैं। क्या आपने ** के तहत कोड का उपयोग करने का प्रयास किया है यदि वे ** हैं? –

16

आप नीचे दिए गए कोड का उपयोग कर सकते हैं:

Worksheet sheet = (Worksheet)xlApp.Worksheets[1]; 
sheet.Select(Type.Missing); 

या

sheet.Activate(); 

मैं इस कोड का इस्तेमाल किया है और यह मेरे लिए ठीक काम करता है।

+1

यह केवल तभी काम करता है जब आप सेट करते हैं। दृश्य = सही – Denis

0

आप इसे दोनों तरीकों से कर सकते हैं:

Excel.Application xlApp; 
Excel.Worksheet xlWorksheet; 
  1. xlWorksheet = xlApp.Worksheets.get_Item(1);

  2. xlWorksheet = xlApp.Worksheets[1];

0

xlWorkSheet = (वर्कशीट) xlWorkBook.Worksheets।get_Item (2);

या

xlWorkSheet = (वर्कशीट) xlWorkBook.Sheets [ "SHEETNAME"];

+1

अपने उत्तर को बेहतर तरीके से प्रारूपित करने और कुछ स्पष्टीकरण जोड़ने का प्रयास करें। – Sam