2011-08-08 12 views
5

के माध्यम से एक्सेल शीट का सेल रंग बदलना मैं विजुअल बुनियादी.net के माध्यम से एक्सेल से डेटाबेस में कुछ डेटा लिख ​​रहा हूं। मुझे कुछ कोशिकाओं की पृष्ठभूमि बदलने की जरूरत है और पाठ को बोल्ड करने की भी आवश्यकता है। मुझे ऐसा कुछ चाहिए:वीबीएनईटी

xlWorkSheet.Cells(rownumber, 1).BackgroundColor = Color.Yellow 
xlWorkSheet.Cells(rownumber, 1).Font.isBold = True 

बेशक उपरोक्त में से कोई भी काम नहीं करता है। मैं इसे कैसे प्राप्त कर सकता हूं? धन्यवाद ..

उत्तर

9

आपको Excel.Style ऑब्जेक्ट बनाने की आवश्यकता है, और इसे किसी श्रेणी में लागू करें। इस तरह:

Dim style As Excel.Style = xlWorkSheet.Application.ActiveWorkbook.Styles.Add("NewStyle") 
style.Font.Bold = True 
style.Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Yellow) 

xlWorkSheet.Cells(rownumber, 1).Style = "NewStyle" 
+0

हम इंडेक्स (1,1), (5,6) इत्यादि के अनुसार कैसे कर सकते हैं आदि ए 1, बी 1 .. जैसी नहीं है? – dnur

+0

@dnur: xlWorkSheet.Cells (1,1) प्रकार रेंज का है, इसलिए * Controls.AddNamedRange (xlWorkSheet.Cells (rownumber, 1), "rangeStyles") * काम करना चाहिए। –

+0

यह लाइन पर एक त्रुटि देता है जिसमें "ग्लोबल्स। यह वर्कबुक" शामिल है। मैंने इसे अपने कार्यपुस्तिका नाम "xlWorkBook" और "Globals.xlWorkBook" के साथ बदल दिया लेकिन उनमें से कोई भी काम नहीं किया। इसके अलावा यह लाइन पर दूसरी त्रुटि देता है जिसमें "माइक्रोसॉफ्ट.ऑफिस.ूल.एक्ससेल.NamedRange" शामिल है और मैंने इसे "माइक्रोसॉफ्ट.ऑफिस.इंटरोप.एक्ससेल.शिप्रेंज" के साथ बदल दिया है। क्या यह सच है? – dnur

4

यह मेरे लिए सही काम करता है।

xlsWorkSheet.Cells (पंक्ति, कॉलम) .interior.color = Color.Green

+0

यह बहुत आसान है! –

1

कुछ घोषणा है कि आप शैली के लिए मदद कर सकते हैं यही एक एक्सेल
रंग पैलेट के लिए: http://dmcritchie.mvps.org/excel/colors.htm

   Dim xlsCell As Excel.Range 
        xlsCell = xlWorkSheet.Range("A1") 
        xlsCell.Range("A5").Value = "TEXT" 

        With xlsCell.Range("A12:J12") 
         .Merge() 
         .Borders(XlBordersIndex.xlEdgeBottom).Weight = 2 
         .Borders(XlBordersIndex.xlEdgeTop).Weight = 2 
         .Borders(XlBordersIndex.xlEdgeLeft).Weight = 2 
         .Borders(XlBordersIndex.xlEdgeRight).Weight = 2 
         .Borders(XlBordersIndex.xlInsideHorizontal).Weight = 2 
         .Borders(XlBordersIndex.xlInsideVertical).Weight = 2 
         .Interior.ColorIndex = 15       
         .WrapText = True 
         .Font.FontStyle = "Arial" 
         .VerticalAlignment = Excel.XlHAlign.xlHAlignCenter 
         .HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft 
        End With 
0
void SetCaptionStyle(ExcelStyle style) 
    { 
     style.Fill.PatternType = ExcelFillStyle.Solid; 
     style.Fill.BackgroundColor.SetColor(Color.FromArgb(184, 204, 228)); 

    } 
+1

क्या आप कृपया वीबीएनईटी से इस सी # फ़ंक्शन को आयात और कॉल करने के बारे में बता सकते हैं? – Tino

+0

मैं इस भाषा के लिए नया हूँ। लेकिन मुझे कुछ मदद यूआरएल मिला। उम्मीद है कि आपकी मदद करेगा। 1) http://vb.net-informations.com/excel-2007/vb.net_excel_page_format.htm 2) https://www.gemboxsoftware.com/spreadsheet/examples/c-sharp-vb-net-excel शैली-स्वरूपण/202 – Jagdeep