从Excel打印标签
我有一个47列和约100行的Excel表。 我有一个Windows窗体应用程序与文本字段,button和标签。
这是我想要做的:
当我将一个数字粘贴到文本框中并单击该button时,它将search整个Excel表格,并获取表格(行,列)中特定string所在的行和列。 这工作正常。 我对表演很满意。 这是我真正想要做的 –
findsearchstring的位置后,我想到同一行的第45列,并从该单元格获取string,并将其显示在标签中。
这是我的代码(我没有做的工作!)
string File_name = "C:\\Users\\v-nikken\\Documents\\My Received Files\\Case Wellness.xlsx"; Microsoft.Office.Interop.Excel.Application oXL = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook oWB; Microsoft.Office.Interop.Excel.Worksheet oSheet; try { object missing = System.Reflection.Missing.Value; oWB = oXL.Workbooks.Open(File_name, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing); oSheet = (Microsoft.Office.Interop.Excel.Worksheet)oWB.Worksheets[1]; Microsoft.Office.Interop.Excel.Range oRng = GetSpecifiedRange(textBox_SRNumber.Text, oSheet); if (oRng != null) { //THIS IS THE LOGIC I HAVE TO TAKE VALUE FROM THE CELL TO THE LABEL //AND OBV IT ISN'T WORKING int IRPlace = Convert.ToInt32(oRng.Column) + 46; //This is obv wrong label_IRMet.Text = Convert.ToString(oSheet.Cells[Convert.ToInt32(oRng.Row), IRPlace]); //This also label_scope_sent.Text = IRPlace.ToString(); } else { MessageBox.Show("Case number not found!", "Please try again"); } oWB.Close(false, missing, missing); oSheet = null; oWB = null; oXL.Quit(); } catch (Exception ex) { }
对不起格式。 代码部分由于某种原因不起作用。
请帮忙!!
Windows 10 – Excel 2016 – VS 2017 – .net 4.6.1
Microsoft.Office.Interop.Excel.Range valueForLabel=(Microsoft.Office.Interop.Excel.Range)yourSheet.Cells[oRng.Row,IRPlace]; string labelText=valueForLabel.Value.ToString();