我已经看了build议的问题find我的问题的答案。 最接近的问题叫做:统计另一个Excel工作表中不同的Excel Sheet Sheet中的行数 解决这个问题不适合我。 我正在计算不同工作表中的活动工作表的范围内的行数。 这是我的代码: Sub verbflashcards() Dim wordcount As Long With Worksheets("Verbs") wordcount = .Range(Cells(4, 1), Cells(4, 1).End(xlDown)).Rows.Count End With MsgBox (wordcount) End Sub 我有一个名为Verbs的工作表,它是工作簿中的第二个工作表。 我努力了: With Verbs With Sheet2 With Sheets("Verbs") With Sheets("Sheet2") 他们似乎没有任何工作。
我运行这个代码来删除有> -100的行。 然而,它保持循环,永不停止。 我在这里错过了什么? For i = 2 To 500 If Worksheets("Sales").Cells(i, 3).Value > -100 Then Worksheets("Sales").Cells(i, 3).EntireRow.Delete i = i – 1 End If Next i
我是VBA新手。 我有工作来提高VBA代码的性能。 为了提高代码的性能,我必须读整行并将其与另一行进行比较。 有没有办法在VBA中做到这一点? 伪代码: sheet1_row1=read row1 from sheet1 sheet2_row1=read row1 from sheet2 if sheet1_row1 = sheet2_row1 then print "Row contains same value" else print "Row contains diff value" end if
好的,我发现这一点代码,并认为它可能是很好的使用,如果我只需要从一个封闭的工作表拉一个值。 strInfoCell = "'" & strPath & "[" & strFile & "]Sheet1'!R3C3" myvalue = ExecuteExcel4Macro(strInfoCell) 不,当我运行这个代码时,我得到了一个strinfocell的值 :strInfoCell:“'C:\ Users \ my.name \ Desktop [QOS DGL stuff.xlsx] Sheet1'!R3C3”:String 但是当我运行代码时,文件打开对话框popup,显示“QOS DGL”的桌面文件显示。 这是什么原因造成的,为什么它不是像预期的那样拉回数据呢? 我知道path和文件名是正确的,casue如果我从debugging输出复制他们,并将其粘贴到开始>>运行然后正确的工作表打开 我知道sheet1(名为:ACL),在单元格(3,3)中有一个值, 干杯 亚伦
我想使用上面的单元格的值来填充所有空单元格 state name IL Mike Sam CA Kate Bill Leah 应该如下 state name IL Mike IL Sam CA Kate CA Bill CA Leah 我尝试了以下 Sub split() Dim columnValues As Range, i As Long Set columnValues = Selection.Area Set i = 1 For i = 1 To columnValues.Rows.Count If (columnValues(i) = "") Then columnValues(i) = columnValues(i […]
我正在写一个vba代码,它应该删除选定的excel工作表上的数据,打开一个文本文件select对话框,然后将该文本文件中的数据导入到我从中删除数据的同一张表。 到目前为止,我只能打开文本文件到一个新的工作簿,但不能打开它到我已经删除数据从同一张表。 这是我到目前为止,将感谢您的帮助: Dim Filt As String Dim FilterIndex As Integer Dim Title As String Dim FileName As Variant Filt = "Cst Files (*.prn),*.prn" Title = "Select a cst File to Import" FileName = Application.GetOpenFilename(FileFilter:=Filt, Title:=Title) If FileName = False Then MsgBox "No File Was Selected" Exit Sub End If With Application.ActiveSheet Cells.Select Selection.QueryTable.Delete Selection.ClearContents […]
请原谅我是VBA的新手。 有时候我用 Dim r as Range r = Range("A1") 其他时间我使用 Set r = Range("A1") 有什么不同? 什么时候该用什么?
我有一个Excel工作表具有以下macros。 我想循环它,但是如果我能find这个function的话,它就会跳起来。 这不可能吗? Sub Macro1() ' ' Macro1 Macro ' Do Calculate 'Here I want to wait for one second Loop End Sub
我正在检测Excel电子表格中某些单元格的值的变化,像这样… Private Sub Worksheet_Change(ByVal Target As Range) Dim cell As Range Dim old_value As String Dim new_value As String For Each cell In Target If Not (Intersect(cell, Range("cell_of_interest")) Is Nothing) Then new_value = cell.Value old_value = ' what here? Call DoFoo (old_value, new_value) End If Next cell End Sub 假设这不是一个很好的编码方式,我怎样才能在改变之前得到单元格的值?
在Excel的一个实例中运行的Excel VBAmacros是否可以访问另一个正在运行的Excel实例的工作簿? 例如,我想创build一个在任何正在运行的Excel实例中打开的所有工作簿的列表。