Tag: vba

根据名称将工作表合并到一张工作表中

我能够在一张纸上编辑纸张,但是我想指出我要复印的纸张。 源文件可能有多个工作表名称Delta Prices #因此,如果找不到工作表名称,我想结束循环。 代码是: Option Explicit Sub CreateDeltaReport() Dim Newbook As Window Dim wb As Workbook Dim wb2 As Workbook Dim ws As Worksheet Dim vFile As Variant Dim wkb As Workbook Dim wb3 As Workbook Dim s As Worksheets Set wb = ThisWorkbook vFile = Application.GetOpenFilename("All-Files,*.xl**", 1, "Select One File To Open", , […]

在没有安装Excel的应用程序中打开Excel文件

这是iOS和Android开发的一个普遍问题。 我想考虑这是否可能,并从这里收集想法。 你可以将这个应用程序想象成一个社交networking应用程序,人们可以评论/添加/编辑彼此的post。 我希望用户从两边添加/上传Excel文件,然后我希望其他用户在应用程序内部查看此Excel文件,而不是跳到手机中的Microsoft Excel APP。 在一个句子中,只需在我的应用程序中添加Excel视图function即可。 你认为这是可能的吗? 任何现有资源? 谢谢。

从列中获取所有非空值并转换为电子邮件列表

我试图创build一个VBA代码,发送一个电子邮件地址列E列中的电子邮件。我列在E列的电子邮件如下所示: abc@email.com 123@email.com <Blank Cell> pop3@email.com <Blank Cell> email@test.com 这是我的代码: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Range("M2")) Is Nothing And Range("M2").Value = "Send Prospect Alerts" Then Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) strbody = "This is an email" On Error Resume Next With OutMail .To = Range("E6:E100").Value .CC = "" […]

删除具有一个特定列的空白行

我做了一个代码,将在我的表(table1)的所有行中search,并在某一列中find一个空白的单元格,该行将复制另一个表(表2),并从table1擦除。 当我把代码运行vb保持“不运行”,我需要强制停止,但是当我在Excel中查看表,我看到他复制一些行(不删除,因为我强制停止之前,他到达那里)。 我在一个有95k行的桌子上做这个,花了很多时间,我需要那么快。 所以这是代码: Function DeleteRows() Debug.Print Time Dim shtSrc As Worksheet, shtDest As Worksheet Dim lRow As Long, Row As Long Dim rw As Range, rngDel As Range Application.ScreenUpdating = False viewmode = ActiveWindow.View ActiveWindow.View = xlNormalView Application.EnableEvents = False Application.DisplayStatusBar = False ActiveSheet.DisplayPageBreaks = False Row = 2 lRow = Range("A" & Rows.Count).End(xlUp).Row […]

天数的循环数组错误

我testing这个代码来循环,如果有一个date是我的数组。 以列A为例,没有什么问题,结果信息是3,在我看到的即时窗口(01/01 / 2015,06 / 01 / 2015,02 / 02/2015)testing一些情况下,只有1天进入数组,我删除了像C列那样的2天(A3,A4),结果消息是1,但是我在规则上收到错误For Each i In arfest (错误运行时13,input不对应),如果我也删除了值在A2上,我检索1与前面的例子相同的错误味精。 Sub dada_click() Dim arfest As Variant Dim i As Variant UR = Sheets("Fest").Cells(Rows.Count, 1).End(xlUp).Row If UR < 2 Then UR = 2 arfest = Sheets("Fest").Range("A2:A" & UR) MsgBox (Application.CountA(arfest)) For Each i In arfest Debug.Print i Next i End Sub […]

加载一个带有variables文件名的XML文件,用XSL进行转换

我正在寻找在Excel VBA中运行以下: Dim xmldoc As Object, xsldoc As Object, newdoc As Object Set xmldoc = CreateObject("MSXML2.DOMDocument") Set xsldoc = CreateObject("MSXML2.DOMDocument") Set newdoc = CreateObject("MSXML2.DOMDocument") ' LOAD XML xmldoc.async = False xmldoc.Load ActiveWorkbook.Path & "\Original.xml" ' LOAD XSL xsldoc.async = False xsldoc.Load ActiveWorkbook.Path & "\XSLT_File.xsl" ' TRANSFORM xmldoc.transformNodeToObject xsldoc, newdoc newdoc.Save ActiveWorkbook.Path & "\Output.xml" 我在相同的代码中运行这个,但之后,步骤,而原始的XML被导出 ActiveWorkbook.SaveAsXMLData […]

两列组合

我需要两列的所有组合。 第一列: +—-+ | 4 | | 8 | +—-+ 第二栏: +—-+ | 5 | | 6 | +—-+ 输出应该如下所示: +—–+——-+ | 4 | 5 | | 4 | 6 | | 8 | 5 | | 8 | 6 | +—–+——-+ 可能吗? 解: 第三栏: =IF(ROW()-ROW($F$1)+1>COUNTA(A:A)*COUNTA(B:B),"",INDEX(A:A,INT((ROW()-ROW($F$1))/COUNTA(B:B)+1))) 第四栏: =IF(ROW()-ROW($F$1)+1>COUNTA(A:A)*COUNTA(B:B),"",INDEX(B:B,MOD(ROW()-ROW($F$1),COUNTA(B:B))+1))

不同文件之间的单元格范围的有条件复制

我想弄清楚如何在Excelmacros中实现以下algorithm。 我有两个我想合并的excel文件,我们称它们为fileA和fileB,macros是在fileB中。 我想要做的是以下几点: do{ if cells(N,j) of file A is not empy{ //where N is the column and j is the row copy content of range (Nj:Pj) of fileA into fileB; j++; } while(fileA.Cells(H,j) is not empty 有没有人可以帮助我? 谢谢丹

重新排列单个列中的数据

我需要帮助编写Excel VBA的代码。 我有以下格式的数据: 12.12312 ser-asd alskdja123 alskd bv laskd alskdj alsdj 12.423 12.656 asd sdfgsd sdfsd sdfsdf sdfsd sd fsd fsd fsdf 当前数据存储在一个Excel列中 。 我想要以下面的格式: 12.12312 ser-asd alskdja123 alskd bv laskd alskdj alsdj 12.423 12.656 ser-asd alskdja123 alskd bv sdfsd sd fsd fsd fsdf 我不是高级程序员,我是networking工程师。

从旧的范围中删除单元格,然后根据新的范围VBA进行计算

我对VBA很新,并没有真正尝试过,所以我希望这是一个相对简单的问题,有人可以帮助。 我想要的是一个具有定义范围的函数,那么如果一个单元格的值是= 0,这个单元格将被从范围中删除。 一旦全零被删除,运行一个简单的“如果”计算给我的结果。 我到目前为止如下… Function BestCalc(rng As Range, weighted As Double) Dim cell As Range For Each cell In rng If cell.Value = 0 Then newrng = rng – ActiveCell.rng End If Next ' Gets rid of zeros in range m = Application.WorksheetFunction.Average(newrng) ' Mean of newrng s = Application.WorksheetFunction.StDev(newrng) ' St dev of […]