导出到在本地主机上工作的Excel函数,但不在发布的网站上

我有这个代码导出我的GridView到Excel,它在localhost中工作,但部署后它不起作用。 单击我的导出button时收到的错误是运行时错误。 protected void EXPORT_BUTTON_Click(object sender, EventArgs e) { Microsoft.Office.Interop.Excel._Application app = new Microsoft.Office.Interop.Excel.Application(); // creating new WorkBook within Excel application Microsoft.Office.Interop.Excel._Workbook workbook = app.Workbooks.Add(Type.Missing); String DATA1 = "DATA1"; String DATA2 = "DATA2"; ExportToExcel(app, workbook, DATA_1, DATA1); workbook.Worksheets["Sheet1"].Delete(); workbook.Worksheets["Sheet2"].Delete(); workbook.Worksheets["Sheet3"].Delete(); ExportToExcel(app, workbook, DATA_2, DATA2); string FolderPath = ServerName + DirectoryLocation + DirectoryFolder + ExportsFolder; var […]

这个技巧是否有任何缺陷通过调用Evaluate来检查表单是否存在?

我需要检查给定工作簿中是否存在具有某个特定名称的工作表。 天真的做法是这样的: using Excel = Microsoft.Office.Interop.Excel; bool ContainsSheet (Excel.Workbook workbook, string sheetName) { try { Excel.Worksheet sheet = workbook.get_Item(sheetName) as Excel.Worksheet; return sheet != null; } catch (System.Runtime.InteropServices.COMException ex) { return false; } } 但是这个例外令人讨厌。 这是浪费我的时间一次又一次,而我的程序debugging其他无关的部分。 我也想避免遍历工作簿的每个工作表,比较名称。 这在我看来是非常低效的。 经过一番研究,我做出了这个解决scheme,whis是基于这样一个事实:Evaluate()在失败而不是抛出exception时返回一个错误代码: using Excel = Microsoft.Office.Interop.Excel; bool ContainsSheet (Excel.Workbook workbook, string sheetName) { // Sadly, I need a […]

从Access表中selectID是一个string

我有一些在Excel中的代码,更新一个Access表,如果RTP_ID等于IngID,下面的匹配,如果它们是RTP_ID数字作品: sSQL = "SELECT * FROM Tbl_Primary WHERE RTP_ID = " & lngID 不过,我希望它RTP_ID可以是一个string。 我试过了: sSQL = "SELECT * FROM Tbl_Primary WHERE RTP_ID = '" & lngID & "'" 但是这仍然行不通,有什么想法? 所以如果RTP_ID是1它会工作,但如果它是1A它不会。 编辑 – 这里是我目前的代码: Application.ScreenUpdating = False Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Dim fld As ADODB.Field Dim MyConn Dim lngRow As Long […]

为什么我的图像不embeddedHTML电子邮件?

我试图运行VBA中的代码,将发送HTML电子邮件,并试图在电子邮件中embedded图像。 我有以下代码这样做: Sub EmailImage() Dim oApp As Outlook.Application Dim oEmail As MailItem Dim colAttach As Outlook.Attachments Dim oAttach As Outlook.Attachment Set oApp = CreateObject("Outlook.Application") Set oEmail = oApp.CreateItem(olMailItem) Set colAttach = oEmail.Attachments Set oAttach = colAttach.Add("C:\Users\User1\Documents\thumbs-up.jpg") oEmail.Close olSave oEmail.To = "abc@abc123.com" oEmail.HTMLBody = "<IMG alt='' hspace=0 src='cid:thumbs-up.jpg' align=baseline border=0>&nbsp;</BODY>" oEmail.Send Set oEmail = Nothing Set […]

我怎样才能改善我的MS Excel公式?

这是我写的一个代码,用来检查员工是否有超过5天的连续工作时间 – 这是不允许的。 所以写这个确保这不会发生。 我知道代码的作品,但它看起来很可怕,所以我想知道如何改善这一点? 这里是参数。 我只想计算73,311,711。这些组合不能超过连续5天而没有间断。 这是我的代码: = IF(IF(COUNTIFS(B15:G15, “<>” &$ Z $ 21 B15:G15, “<> VL”,B15:G15, “<> LWOP”)> 5,COUNTIFS(B15:G15,” <> “&$ Z $ 21 B15:G15,”<> VL”,B15:G15, “<> LWOP”),0)+ IF(COUNTIFS(C15:H15, “<>” &$ Z $ 21 C15 :H15, “<> VL”,C15:H15, “<> LWOP”)> 5,COUNTIFS(C15:H15, “<>” &$ Z $ 21 C15:H15, “<> VL”,C15:H15 , “<> LWOP”),0)+ IF(COUNTIFS(D15:I15, […]

根据第二个参数计算不同的值

说我有列A作为数字,B作为types: 我想分别计算types“C”和types“I”有多less个唯一的数字。 在这个例子中,我想要的结果是“C”: 2 ,“I”: 3 。 如何基于Excel中的第二个参数来计算不同的值?

布尔,真和真和真来作为假?

这是否有一个原因是错误的? 以下是debugging时的VBA输出: ?A + B > X & A + B <= Y & C = 0 False ?A + B > X & A + B <= Y True ?C=0 True ?A + B > X True ?A + B <= Y True

列出打开的工作簿减去当前的工作簿

我已经实现了以下代码,列出了ComboBox中所有打开工作簿的名称: Option Explicit Private Sub ComboBox1_Change() If Me.ComboBox1.ListIndex < 0 Then Me.CommandButton2.Enabled = False Else Me.CommandButton2.Enabled = True End If End Sub Private Sub CommandButton1_Click() Unload Me End Sub Private Sub CommandButton2_Click() MsgBox "Are you sure you want to select " & Me.ComboBox1.BoundValue, vbOKOnly Application.Workbooks(Me.ComboBox1.Value).Activate End Sub Private Sub UserForm_Initialize() Dim myWin As Window Dim […]

如何将公式应用于整列?

我需要从Excel的列中的所有行中减去该列的最小值。 我有一百万行,我不能拖动单元格框的右下angular,将公式应用于所有这些单元格。 不幸的是我还没有find任何可行的方法。 我想从该列的每个单元中除以1000的列的最小值并存储在另一列中: =(B1-MIN(B:B))/1000 我如何将这个应用到我希望这个工作的列的所有行? 一般情况下,如何将公式应用于一列的所有行?

数据更改时如何在Excel中保留graphics格式?

我在Excel中有一系列我以前格式化的图表。 要绘制的数据来自dynamic系列,用户select一个元素,然后图表显示所选元素的浓度。 当我select另一个元素,我不希望格式改变,因为它现在做: 我已经尝试locking格式化所有的图表:.ProtectFormatting = True 工作表受到保护,用户只能select他们想要绘制的元素。 通过select元素,要绘制的行更新(使用dynamic指针),但格式也是如此。 我试图将图保存为模板,然后使用每个图的模板,但我不确定这是否正确。 有趣的是,当我重新select格式化图(Cu)时,我找回了我保存的格式! 我必须手动(或使用macros)格式所有25个可能的图? 我有3个不同的图表,每个元素…