Tag: ms office

正常化excel单元格中的行尾

我有一个相当大的excel文件,可悲的是有一些不一致的行结尾,这意味着一个单元格包含一个段落,并且在这个段落中的一些行具有Unix样式行结束符(CR),并且一些具有窗口行结束符(CRLF)。 标准化单元格中的行尾是非常重要的,因为在导出为xps格式后,某些xps读取程序库(c#)不会正确处理CR字符,只是向左和向右引发exception。 我可以为1个单元格手动标准化行结束符,但是我想在单个操作中对所有单元格执行此操作,因为该文件包含30.000以上的行。 你知道在Excel中做这个的方法吗?

使VSTO Excel 2016工作簿应用程序便携/无需安装?

我有以下情况: 我开发了一个VSTO Excel 2016工作簿,当您在上述工作簿中复制/粘贴Excel工作表时,会触发一些代码。 当我发布项目(项目属性>发布>立即发布)时,Visual Studio在文件夹中创build以下内容: Excel工作簿(.xlsx) VSTO文件(.vsto) setup.exe文件 工作簿只打开时没有错误,当我第一次运行安装程序,很明显安装.vsto文件。 我的问题: 你可以生成/发布一个可移植的.xlsx工作簿,即你不必安装任何东西,因为代码已经在.xlsx文件中了。 因为我不想每次运行setup.exe时切换到另一台电脑。 还是有甚至VSTO /我的问题的替代解决scheme?

无法在天数小于12时以适当的格式获取date从EXCEL在C#

我是新来的C#。 当我试图使用下面的代码导入Excel表: try { DateTime date = DateTime.FromOADate(w.Cells[i, index[j]].value2); string str = date.ToString("dM-yyyy"); dRow[j] = Convert.ToDateTime(str, ci); } catch (Exception) { try { String ss1 = (String)w.Cells[i, index[j]].value2; if (ss1 == null || ss1.Equals("NIL") || ss1.Equals(".")) { dRow[j] = DBNull.Value; } else if (ss1 != null) { DateTime dat = Convert.ToDateTime(ss1); ss1 = dat.ToString(ci.NumberFormat); dRow[j] […]

比较值之前添加ISBLANKvalidation

其实我对Excel公式不太熟悉。 我使用列E和F中的date来为单元格着色 =+IF(AND(DATEVALUE(I1)>=DATEVALUE($E$2);DATEVALUE(I1)<=DATEVALUE($F$2));1;2) 当列E和列F存在值时,此公式工作正常。如果E和F没有值,则它将导致错误值。 我知道一点关于ISBLANK()函数。 我想添加条件来检查单元格E2和F2在我现有的公式之前不是空白的。 你可以请build议适当的语法? 谢谢

根据条件执行范围函数(例如求和,平均,中位数)

我想在Excel中做一些看起来很简单的事情,但我不知道要使用哪些function。 我想计算一个单元格范围的中值,对于这个单元格而言,相邻单元格包含一个特定的单词。 例如,拿这两列 yes | 1 no | 4 no | 5 yes | 3 yes | 2 no | 9 no | 6 no | 8 yes | 1 no | 5 yes | 3 no | 5 比方说,我想计算所有没有案件的中位数,所有是的案件的中位数。 它看起来像这样(如果我做得对): yes | 2 no | 5 我知道,为了取得总和,你可以使用COUNTIF ,我也知道有一个IF函数,但我不知道如何使用它来定位到你想要的数据。

date之间的计算时间间隔即使列是date格式,也会出现#VALUE错误

我有2个date列 – 都有“数字types”下的date格式。 但是,当我做= C2-B2间隔,我得到错误。 在展会计算我得到 "9/4/2015" – 42252 给我42252的列是date格式。 我甚至插入了一个新的列,将格式更改为DATE,并在date中键入,并给了我相同的错误。 我什至尝试DATEDIF(start_date,end_date,间隔),它给了我错误。

打开Word文档,复制特定的文本,粘贴到Excel电子表格

我正在尝试打开一个VBA脚本来打开一个单词文档,查找一个看上去像“TPXXXX”(其中“X”是数字)的单词,然后将该文本粘贴到Excel电子表格中。 我可以打开文档这个词,但是我无法select和find我需要的文本。 到目前为止,我有这个部分: Sub Copy() 'Create variables Dim Word As New Word.Application Dim WordDoc As New Word.Document Dim Doc_Path As String Dim WB As Workbook Dim WB_Name As String Doc_Path = "C:\Path\To\File.docx" Set WordDoc = Word.Documents.Open(Doc_Path) 'Find text and copy it (part that I am having trouble with) Selection.Find.ClearFormatting With Selection.Find .Text = "TP" .Format […]

错误1004工作表类的粘贴方法失败,间歇

此代码的目的是search并从word文档复制一个数字到Excel电子表格。 它不会一直发生,但是我运行这个脚本时会遇到1004错误。 debugging器突出显示了第一个 “ActiveSheet.Paste”语句,它是在“Do While Loop”之下的代码问题。 我没有看到与脚本的任何其他部分有任何冲突。 任何人发现任何错误? Sub TorCopy() ' Set variables Dim Word As New Word.Application Dim WordDoc As New Word.Document Dim i As Integer Dim j As Integer Dim r As Word.range Dim Doc_Path As String Dim TOR_Tracker As Excel.Workbook Dim TOR_Tracker_Path As String Dim Whiteboard_Path As String Dim Whiteboard As Excel.Workbook […]

在excel上closures一面加载的office加载项?

我正在处理一个Excel任务窗格加载项,并按照Sideload在Microsoft Office Online上的一个Office加载项上的说明在Excel Online中进行加载。 加载项已成功加载,但是,我找不到closures/卸载它的方法。 在Excel for Mac上,任务窗格右上angular有一个closuresbutton,但Excel Online上不存在此button。 我已经尝试注销并closures浏览器,但它不起作用。 可以请你帮忙吗? 提前致谢

使用Excel查找列中连续date的序列

我有一列date格式为:yyyymmdd。 一个例子如下所示: 19480110 19480111 19480115 19480119 19480124 19480130 19480131 19480201 19480204 19480209 19480210 19481225 19481226 19490212 19491210 19500108 19500208 我想只能识别有3个或更多连续date的单元格。 在这种情况下,具有以下值的单元格将被高亮显示: 19480130 19480131 19480201 目前,我有一个公式forms: =IF(A2=A1+1, "Match", "") 但是,如下例所示,在月份发生变化时,它不能识别实例:只打印匹配“19480131”的单元格旁边的匹配项。 目前的格式有几个月有变化吗? 谢谢!