Tag: excel vba

从VBA中的其他函数调用一个函数(Excel)

我有两个VBA函数,但我无法从第一个函数调用另一个函数。 function1: Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim lastRow As Long With ActiveSheet lastRow = .Cells(.Rows.count, "A").End(xlUp).Row Dim I, J As Integer For I = 1 To lastRow If Cells(I, "C").Value = "" Then MsgBox "Please Enter Business Type Value", vbOKOnly Exit Sub End If Next I End With End Sub 而第二个function: Private Sub […]

Excel VBA移动所有图像

我在Excel 2016中使用incrementleft来移动名为“Bullet”的所有图像 码: Worksheets("Fighter Game").Shapes("Bullet").IncrementLeft 18.75 但是代码只是移动了第一个图像。 那么我们如何解决这个问题呢?

如果符合条件,写下“串”然后转到下一个

我有这条线: If UCase(Sheets("DebitCard_Check").Range("G" & i).Value) Like "*TAX*" Then GoTo Skip1 我需要的是插入这样的东西: IF condition is met, write "string" Then GoTo Skip1 如果不满足条件,上面应该继续正常执行其余的代码。 我应该如何处理语法? 我尝试了一堆东西。 否则,ElseIF始终将对象填充为: (Sheets("DebitCard_Check").Range("G" & i).Value) = "string" 这给了我很多错误。 没有IF的EndIF期望的语句,对象,行等 *********************************编辑1 *************** ********************* 这是整个代码 – 修改的build议: Sub Categories_Update() Dim lastrow As Long, lastrow2 As Long Dim i As Integer, j As Integer Dim PatternFound […]

VBA – 复杂的文件打开

我目前已经编码如何打开某个文件夹中的所有文件 Dim MyFolder As String Dim MyFile As String MyFolder = "K:\Data Directories\Acquisitions" MyFile = Dir(MyFolder & "\*.xlsx") Do While Len(MyFile) > 0 Workbooks.Open FileName:=MyFolder & "\" & MyFile MyFile = Dir Loop 现在我试图打开具有相同名称的多个文件夹中的所有文件。 例如: Dim MyFolder As String Dim MyFile As String Dim MyFolder2 As String MyFolder = "K:\Data Directories\Acquisitions" MyFolder2 = MyFolder & […]

折线图标记值标签上下切换

有没有一种巧妙的方法来将标签指示值放置在标记之上,对于标记之下的下一个点,如下所示: (62.2% above, 71.6% below, 77.3% above, 84.9% below…) 我知道我可以手动放置每个标签,但我寻找自动的方式来实现它。 也许某种设置/公式/ VBAmacros?

循环macros以复制基于条件的单元格并粘贴到另一个表下

我试图解决这个问题一段时间,需要一点帮助。 我想有一个将search控制列D的子,复制列B中对应于列D(减去2列偏移量)中的XXXX的单元格值。 将这个单元格的值粘贴到1,1中的单元格中,从F列的最后一个已用单元格中偏移。然后循环直到没有更多XXXX并转到另一个表单。 你可以请帮忙帮忙找出复制XXXX旁边单元格的缺失部分,并查看macros的其余部分。 任何帮助是极大的赞赏。 Sub Copy() Dim LR As Long Dim i As Long Dim SA As String With ActiveSheet LR = .Range("D" & Rows.Count).End(xlUp).Row For i = 1 To LR If .Range("D" & i) Like "XXXX" Then 'MISSING LINE TO COPY A CELL 2 COLUMNS LEFT FROM XXXX Cells(Rows.Count, "F").End(xlUp).Offset(1, 1) = SA […]

VBA将图表放入不同的表格中

我有两个工作表。 一个工作表与源数据和另一个工作表(“相关图”)是我想要的图表。 以下是我的代码。 但是,它仍然在源数据表中绘制图表,而不是在设置范围的位置。 Worksheets.Add.Name = "Correlation Charts" Set myChart1 = Sheets("Correlation Charts").Range("A3:H16") Worksheets("Summary").Activate Application.Union(xValue1, yValue1).Select With ActiveSheet.Shapes .AddChart2(240, xlXYScatter, myChart1.Left, myChart1.Top, myChart1.Width, _ myChart1.Height).Select End With With ActiveChart .ChartTitle.Text = Range("Correl1_yValue") & " " & "vs." & " " & Range("Correl1_xValue") End With

closures工作表之前的消息框,以dislpay所有不受保护的工作表的名称

到目前为止,我已经完成了2个单独的编程。 在closures工作簿之前,会显示一个消息框: Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim answer As String Dim question As String question = "Display all the sheets which are Unprotected" answer = MsgBox(question, vbYesNo) If answer = vbNo Then MsgBox "complete everything and then close" Cancel = True Exit Sub Else ThisWorkbook.Save End If End Sub 另一个显示在所有未受保护的工作表的新工作表“不受保护”中。 Sub UnprotectSheet() Dim ws […]

使用多个“For”和“if”语句加速VBAmacros

这个macros需要2分钟运行。 什么是优化macros的最佳方法? Sub Time_Color(z, k) Application.DisplayAlerts = False For Each cell In Sheet1.Range("C" & z & ":" & "LZ" & z) If cell.Value <> "x" Then If cell.Value < Sheet3.Range("D" & k) Then cell.Interior.ColorIndex = 37 cell.Offset(1, 0).Value = Sheet4.Range("D" & k).Value & "_" & Sheet4.Cells(k, 5).Value End If For j = 5 To 1000 […]

VBA:基于另一个数组的filter数组

我没有find任何东西。 我想要实现的是过滤出一个基于另一个数组mx 1的[nx 3]数组 让我们这样说: arr1 = [nx 3] 'where n is roughly 500'000 arr2 = [mx 1] 'where m is roughly 500 arr1的结构是这样的: arr1(1,1) = ID1 | arr1(1,2) = String1 | arr1(1,3) = Bolean1 arr1(2,1) = ID2 | arr1(2,2) = String2 | arr1(2,3) = Bolean2 arr2它的结构是这样的: arr2 (1) = ID2 | arr2 (2) = […]