Tag: if statement

如果声明vba – 如何跳过一个单元格,如果它有一个值

我编辑了我原来的post,并给了你更多的细节。 基本上我有这样的代码: For x = 1 To 1000 If track.Cells(x, 1) = Date Then If track.Cells(x, 2) = "EU" Then If track.Cells(x, 3) = "ABCDE" Then ST.Range("ABCDE").Copy EU.Cells(41, 2).PasteSpecial Call ActivateSheet track.Range(Cells(x, 4), Cells(x, 9)).Copy **For i = 42 To 1000 If EU.Cells(42 + i, 2) Then EU.Cells(42 + 1, 2).PasteSpecial End If Next i** […]

VBA – 获取单元格值,看看是否存在另一个工作簿的列

我有一个文件夹中的许多文档和一个Excel文件中类似但不同的列表。 文件夹中的文档不一定名称正确,但其中一个单元格中的值具有准确的名称。 END GOAL: 我想要做的是让代码遍历该文件夹,打开每个文件,查看单元格中的文件名*(下面的代码部分)*,并将其与另一个Excel文件中的列A进行比较, ACTIVE_FILES.xls。 如果它在列表中,它将移动到下一个文件。 如果它不在列表中,它将从该文件夹中删除该文件。 我已经有工作代码循环通过一个文件夹打开文件,并从他们输出信息。 我只是不知道如何做一个单独的Excel工作表comparisson或如何删除文件夹中的文件,如果它不存在。 当前代码: 这是我目前的代码开始循环通过文件夹(硬编码到MyFolder)打开文件: Option Explicit Sub Active() Sub LoopThroughDirectory() Dim objFSO As Object, objFolder As Object, objFile As Object, dict As Object Dim MyFolder As String Dim StartSht As Worksheet, ws As Worksheet Dim WB As Workbook Dim i As Integer Dim hc As Range, hc1 […]

If Then和Do Loop的组合(我认为)

对于熟悉VBA的人来说,这可能是一个简单的问题,但作为一个新手,我完全是空着的。 我有两张表,一张是我已经使用代码从项目中拉出的原始数据,没有问题。 另一个是输出表。 在数据表上,我有3列(A,E和H)。 列A具有任务列表,列E具有描述,列H具有会计年度和季度。 在输出页面上,我有十年的财政年度。 我想要做的是扫描任务的某种types的任务,然后一旦我find任务,我输出描述信息在正确的相应财政年度。 我觉得这将需要一个DO循环和一个如果然后,但我所尝试的是不工作的组合。 下面是我开始,很快就知道这是行不通的。 Do Until Worksheets("Project Data").Range("A1").Offset(Row, 0).Value = Empty If Worksheets("Project Data").Range("A1").Value = "Task example*" Then If Worksheets("Project Data").Range("H1") = "FY15*" Then If Worksheets("Project Data").Range("E1") = "" Then Worksheets("Output").Range("C5") = 1 ElseIf Worksheets("Project Data").Range("E1") = "description 1*" Then Worksheets("Output").Range("C5") = 2 ElseIf Worksheets("Project Data").Range("E1") = "description 2*" Then […]

Excel 2013 if语句具有多个和语句

我一直在看其他的例子,但我不知道如何应用它们。 我经历了一些尝试和错误,当我知道我不应该(不是所有的四个领域都具有先决条件“是”)或者我得到一个错误消息时,得到“是”。 我有的代码只是U4和V4,但我想使它为四个单元格(W4和X4,也)。 从本质上讲, =IF(U4="Yes" AND (V4 ="Yes"), "Complete", "No")

(Excel)嵌套IF或AND语句

我有一个Excel电子表格,平均一组不同的数据。 我需要一种方法来显示什么,如果单元格N2包含值9999.09,以确保该值不包括在平均。 需要修改的Excel代码: =IF(T2+0<5,N6,N4) 我试过了 =IF(AND(T2+0<5,N2=9999.09,N6,N4)) 但这不起作用,因为它确实是一个两个条件的声明。 另外单元格T2显示当前小时。

“For Each”循环保持循环通过“If”条件

我使用VBA将Outlook中的电子邮件转换为Excel,并将电子邮件的主题行与另一个工作表上的一系列单元格进行比较。 我正在使用一个For Each循环来实现这一点,但似乎当我的条件符合,它继续下去,所以它不会发布我想要的结果。 它似乎循环了我已经定义的范围内的所有单元格,但是,即使它满足我的条件,它仍然继续,最终成为空白。 在这里我正在定义我的范围: Dim rRng As Range, cel As Range Set rRng = Sheet2.Range("A2:A1218") 这是我的For Each循环: oRow = 1 For iRow = 1 To Folder.Items.Count 'This loops through the inbox items. If VBA.DateValue(VBA.Now) – 1 <= VBA.DateValue(Folder.Items.Item(iRow).ReceivedTime) And VBA.DateValue(VBA.Now) > VBA.DateValue(Folder.Items.Item(iRow).ReceivedTime) Then 'This is checking that the emails were received within a certain […]

在Do,While循环中嵌套IF语句

我一直有一个代码段,在那里我想比较一个用户inputstring与列中的一组string,然后运行一个循环,检查是否相同,如果不是,它会提示用户换另一个string。 如果它们匹配,则继续执行脚本的下一部分。 我称之为variablesChecktag和ServiceTag :(都是变体)。 ServiceTag = InputBox("Please enter the laptop service tag ID") Set TagCheck = ActiveWorkbook.Sheets("Sheet5").Range("B2:B1000").Find(ServiceTag, lookat:=xlWhole) Do If TagCheck Is Nothing Then ServiceTag = InputBox(" User entered Service ID is not present in database, please re-enter the laptop service tag ID") Set TagCheck = ActiveWorkbook.Sheets("Sheet5").Range("B2:B1000").Find(ServiceTag, lookat:=xlWhole) Else MsgBox (" Service Tag ID recognised […]

两列的产出差异优于排除标准

我有一个电子表格,其中包含我们库存中所有机器的所有信息,每台机器都有唯一的ID和位置。 大多数情况下,我们每个站点有一台以上的机器。 有时,访问站点的员工错过了一台机器,我正在寻找一个公式,这个公式可以让我比较本周logging的访问次数与整台机器的收集情况,并在访问过一个站点时输出丢失的机器。 这是整个系统表和周表的一个例子。 1 – 所有的数据 2 – 本周的访问 3 – 预期的产出 1) Machine No. Location 2) Machine No. Location 3) Machine No. Location 1 a 1 a 5 b 2 a 2 a 11 d 3 a 3 a 12 d 4 b 4 b 5 b 6 b 6 b 10 d […]

while循环嵌套if语句vba只打印第一个“TRUE”值并停止

我正在尝试创build一个Do While循环,其中包含一个if语句。 根据If语句的TRUE / FALSE值,它可以进入另一个(子)Do While循环,或者只是循环回到第一个循环,然后重新开始。 我的问题是,一旦If语句返回一个“TRUE”值,macros执行结果,但然后停止第一覆盖Do While循环,我想继续。 (基本上,如果If语句中有一个TRUE值,它不会为x + 1生成另一个循环) 提前谢谢你的帮助 'x is row in input tab Dim x As Integer 'z is column in input tab Dim z As Integer x = 9 Do While x < 59 If Sheets("Input Tool (Auction Team)").Cells(x, "C") = "N" And Cells(x, "D") = "Yes" Then 'insert […]

Excel – IF函数列表中的模态值

我想在列表中find最常见的值,并按名称匹配最常见的结果。 我知道它围绕着一个带有模式和匹配function的索引,其中有一个IF函数。 但不能把它弄下来。 原始数据 USER NAME Items James Ile Flat White James Ile Flat White Michael Pane Latte Lily Wilk Iced Drinks Louise Coset Millionaire Shortbread Louise Wyli Flat White Louise Wyli Millionaire Shortbread Louise Wyli English Breakfast Louise Cosett Cheese Toastie Louise Wyli Flat White Louise Cosett Pineapple Sunset James Court Espresso 期望的结果 USER […]