Tag:

Excel VBA导出为文本文件。 需要删除空行

我有一个工作簿,我使用下面的脚本导出到一个文本文件。 它工作正常,但是当我打开文本文件时总是有一个空行,导致我生成此文本文件后运行的另一个脚本的问题。 任何帮助都可以从我的出口删除空白行。 码: Sub Rectangle1_Click() Application.DisplayAlerts = False ' Save file name and path into a variable template_file = ActiveWorkbook.FullName ' Default directory would be c:\temp. Users however will have the ability ' to change where to save the file if need be. fileSaveName = Application.GetSaveAsFilename( _ InitialFileName:="C:\users\%username%\SNSCA_Customer_" + _ VBA.Strings.Format(Now, "mmddyyyy") + ".txt", […]

删除行时如何自动删除图片?

我想请求帮助。 我手上有很多excel表单,每行都有一张图片。 当我复制和粘贴行时,图片也被复制到粘贴的行中。 但是,当我想要删除行时,图片不会被删除。 相反,它隐藏在下一行图片的后面。 此外,当我sorting/过滤列表,图片似乎并没有遵循。 图片保持在相同的位置,但所有其他值都被sorting/过滤。 我的工作是删除和随机化一些条目,所以你可以想象我的苦恼与所有顽固的图片,只是拒绝属于自己的行。 目前,我可以筛选,突出显示要删除的单元格,不过滤(使图片与行匹配),删除图片,然后手动删除行。 至于随机化,我坚持使用Excel中的“RAND()”函数需要sorting行,这将弄乱图片。 如果有人能提供解决这个问题的办法,我将不胜感激。 这个论坛主题http://www.ozgrid.com/forum/showthread.php?t=85597也描述了我所经历的。 但是,当我尝试VBA代码,它说“运行时错误13”,我不知道这是什么意思。 尝试这个代码是我第一次尝试使用VBAs和macros,但我非常有信心,我遵循指示如何正确地添加和运行它们。 它For Each sh In Shapes被debugging。 一些更多的细节:我的图片属性设置为“移动和单元格的大小”。 每行只有一张图片,不包括标题。 如果你们要求我发送excel文件,我不能这样做,因为它包含私人信息。 但是,我可以更改数据。 希望能工作!

我可以使用什么公式插入x行,其中x是两个文本框响应之间的差异?

我正在创build一个用户窗体,将为用户形成一个报告模板。 该模板需要基于用户报告的“开始date”和“结束date”具有一定数量的行。 添加的行数将是“开始date”减“结束date”加1。 我现在只是通过复制一个logging的macros来计算出下面的代码: Worksheets(5).Rows("5:27").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 在上面的代码中,我可以留下5,因为它将始终是开始date行的位置。 然而,27需要是一个variables。 是否有可能input一个variables行的范围,可以插入不断变化的行数(基于一个函数)? 有我应该使用的另一个代码? 任何帮助,将不胜感激! 并build议我应该用什么名字来描述某些事情也会有所帮助。 我是VBA的初学者,不太清楚语法。 编辑:额外的问题 谢谢@findwindow我在模块中创build了DateDiff函数,所以我得到所需的行数。 function如下。 Function NumberofRows(pDate1 As Date, pDate2 As Date) NumberofRows = DateDiff("d", pDate1, pDate2) + 1 End Function 我试图从函数返回到下面的代码的答案。 我收到“types不匹配”错误。 你能告诉我我的编码是错的还是有一个更简单的方法来做到这一点。 “SDI”和“EDI”被命名为包含开始date和结束date的单元格。 Private Sub InsertRows() Dim i As Integer i = NumberofRows("SDI", "EDI") Worksheets(5).Rows("5:" & i).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove End Sub […]

我的Excel行被locking在409.5的高度,我想增加大小

我在Excel中的一个行的高度maxes在409.5,我需要增加高度。 我在哪里/如何解决这个问题。

VBA拼接单元格用逗号分隔

我真的是新的VBA编码。 我遇到的问题是这样的: B60,D60,F60,H60(等)单元格在这种格式中有不同的值:x,y,z(x,y和z可以是数字0-10)我想拼接它, B60 = x B61 = y B62 = z D60 = x2 D61 = y2 D62 = z2 等等 我发现这个代码: Dim objRegex Dim Z Dim Y Dim lngRow As Long Dim lngCnt As Long Dim tempArr() As String Dim strArr Set objRegex = CreateObject("vbscript.regexp") objRegex.Pattern = "^\s+(.+?)$" 'Define the range to be […]

Excel使用INDEX从命名范围获取行导致公式错误

我有一个非常简单的公式来获得连续的值的总和: =SUM(K5:P5) 但是,K5到P5是命名范围中的第一行,我宁愿引用命名范围,所以我将其更改为: =SUM(INDEX(S2ScoresTotUnitQ1,Row("A1"),0)) 但是我得到了一个“我们发现这个公式错误的问题”。 如何引用命名范围的单个行而不会出现错误?

VB脚本 – 安装Excel 2003和Excel 2007时,显式调用Excel 2007

我的电脑同时安装了Excel 2003和2007以及安装了Excel 2007兼容包,它还有一个VB脚本,可以自动将logging构build到csv文件中。 最近,需要转储到文件中的logging数量大大增加,超出了Excel 2003中的行限制。因此,我制作了相同文件的副本并将其保存为.xlsm格式。 但是,当我使用VBScript通过调用下面的Excel电子表格运行macros: Set myApp = CreateObject("Excel.Application") Excel文件仍然试图打开自己将其转换(使用兼容包)到Excel 2003中,并在Excel 2003中运行,这在每次运行时都不可避免地发生错误。 有什么办法可以强制Excel.Application指向Excel 2007而不是Excel 2003? 谢谢!

XLmacros可以select一个范围,可变的起始和结束行?

我是一个前线技术。 macros编码并不是新鲜事物,但我的大部分经验是在WordPerfectmacros中。 我正在尝试编写一个Excelmacros,它将select一系列文件中的范围并对其执行操作。 期望的范围是在一组常量列中,但是是一组可变的行。 静态值标记开始和结束行,但这些行将随每个数据文件而变化。 我遇到的问题是,当我录制macros时,XL不会logging我的光标移动(Ctrl-Up,Ctrl-Shift-Home等),它会logging我正在处理的绝对单元格地址。 由于起始行和结束行随每个数据文件而不同,所以绝对单元格引用将不起作用。 任何人都可以提供任何提示,如何我可以/应该这样做? 在此先感谢詹姆斯

Excel VBA代码清除列和行

需要vba代码清除从A到J的列,并从21行到200.下面的代码是清除列直到结束,需要删除,直到J列 Function ClearSummary() Const TestName_Col = "B" Const FirstRow_Num = "21" MaxRowNumber = Range(TestName_Col & "200").End(xlUp).Row If (MaxRowNumber > FirstRow_Num) Then 'select all rows in range & clear CellReference = FirstRow_Num & ":" & MaxRowNumber Rows(CellReference).Select Selection.ClearContents Selection.Hyperlinks.Delete Selection.Font.Underline = xlUnderlineStyleNone Selection.Font.ColorIndex = 0 End If End Function

需要使用VBA在Excel中的表中返回行值。 可以是任何表格,在工作表上不能使用activecell的地方

在Excel中使用VBA: 我有很多表有多个表。 这些表唯一的共同点是ProductID列和LotNumber列。 “产品ID”列中的数据需要进行validation和操作。 我需要一种方法来获得当前所选单元格的当前TABLE表格行索引号。 我无法使用ActiveCell引用,因为表格行与表格行不匹配。 我不能使用查找列中最后使用的单元格,因为在其他表中。 我需要能够在许多不同的工作簿中使用这个子。 这是我到目前为止的代码。 Const tblUNLABELED As String = "tblUnLabel" Private Sub Worksheet_SelectionChange(ByVal Target As Range) StopAppEvents Dim ws As Worksheet Set ws = ActiveSheet Dim intRow As Integer Dim strTest As String If Not Intersect(ActiveCell, _ ActiveSheet.Range(tblUNLABELED & "[LotNumber]")) Is Nothing Then 'go to the product entered in this […]