Tag: if statement

Excel VBA如果声明只有可见的单元格

我正在尝试编写一个代码,在过滤字段上使用if语句,它将查找特定范围的单元格的第一个字母值,如果该字母落入特定范围,则要输出特定人员的首字母缩写。 我的代码是: Sub NewFilter() Dim wbI As Workbook, wb0 As Workbook Dim wsI As Worksheet, ws0 As Worksheet Dim myRange As Range Dim outputRange As Range Dim i As Long, j As Long 'Establish my source of info worbooks and worksheet Set wbI = ThisWorkbook Set wsI = wbI.Sheets("Sheet1") 'Filters Original wb by criteria Selection.AutoFilter […]

与VLOOKUP嵌套的IF公式

在单元格D5中: =IF(VLOOKUP(C5,'store1'!$F$4:$F$29,1)=C5,"store1","")&(IF(VLOOKUP(C5,'store2'!$F$4:$F$29,1)=C5,"\store2","")&(IF(VLOOKUP(C5,'store3'!$F$4:$F$29,1)=C5,"\store3","")&(IF(VLOOKUP(C5,'store4'!$F$4:$F$29,1)=C5,"\store4","")&(IF(VLOOKUP(C5,'store5'!$F$4:$F$29,1)=C5,"\store5","")&(IF(VLOOKUP(C5,'store6'!$F$4:$F$29,1)=C5,"\store6","")&(IF(VLOOKUP(C5,'store7'!$F$4:$F$29,1)=C5,"\store7","")&(IF(VLOOKUP(C5,'store8'!$F$4:$F$29,1)=C5,"\store8","")&(IF(VLOOKUP(C5,'store9'!$F$4:$F$29,1)=C5,"\store9","")&(IF(VLOOKUP(C5,'store10'!$F$4:$F$29,1)=C5,"\store10","")))))))))) 我有十个商店工作人员名单和一个“所有店员工名称”表。 有时几个员工在两家商店工作,并用store1刷卡store2或store3或其他。 我想要的是,如果某个员工在多个商店工作,然后在“所有店员工姓名”表中存储(即工作表名称)号码。 例如:所有商店的“所有商店员工姓名”c5到c30是A到Z字母表,f4到f29 A到Z字母表。 公式工作但不正确,A到M显示#N/A

如果单元格具有指定的值,则调用指定的子元素,否则调用另一个子类

我有两个Excel文件,它们的第一个工作表具有相似的布局和相似的单元格值,唯一不同的是其中一个在G6中有一个值“Plant”,另一个在E6中有。 用户应该select这些文件之一,我已经写为代码,所以没有问题,我只需要把一个if else语句,检查所选文件的单元格G6是否具有值“工厂”,然后它会调用一个子工厂G6,否则应该叫子工厂E6。 If Workbooks("selectedexcelfile.xlms").Sheets(1).Range("G6").Value = "Plant" Then Call PlantE6 Else… 我知道这个代码是错误的,所以我只是想得到正确的代码。

如果范围内的任何单元格符合标准,则尝试取消隐藏其他列

我的电子表格用重复的行进行布局,以便手动validation数据。 列“I”包含一个通过数据validation下拉3个选项。 我试图保留一个额外的列“K”隐藏除非(罕见)的情况下,选项“N / A”是从下拉列表中select。 Private Sub Worksheet_Change(ByVal Target As Range) If Columns("K").EntireColumn.Hidden = True Then If Target.Value = "N/A" Then Act3 Else Act4 End If Else Act4 End If End Sub Sub Act3() Columns("K").EntireColumn.Hidden = False End Sub Sub Act4() Columns("K").EntireColumn.Hidden = True End Sub 我的代码可能有点粗糙,但是当select正确的标准时,它至less会取消隐藏列。 我的问题是,如果另一个单元格被选中,不需要额外的列,然后再次隐藏列。 我错过了什么? 是否有一个function,允许沿线的东西: '如果任何在范围然后'

隐式引用variables名称通过string数组的if语句?

我试图做的是使用if语句将指定的值与一长串variables进行比较。 我想隐式地引用if语句的variables名(以及进一步处理),这样我就不必做20+条if语句。 这是我的代码,我得到一个types不匹配。 Public iFPYCol As Long Public iTimeCol As Long Public iBrgPosCol As Long Public iBrgPosFailCol As Long Public iDisLoadCol As Long Public iDisLoadFailCol As Long Public iMaxBrgLoadCol As Long Public iBrgMaxLoadFailCol As Long Public iBrgTravelCol As Long Public iTravelFailCol As Long Public iPlateLoadCol As Long Public iPlateLoadFailCol As Long Public iDepartureCol As Long […]

在消息框中的范围..?

还有一个问题 – >我想在一个消息框中显示范围内容,我该怎么做? 假设有新的投资组合:1)美国广播公司,2)XYZ,3)在一个范围内的GHI ….当我使用下面的代码我没有得到。 的组合作为3,但我真的想要他们的名字 MsgBox“New Portfolios found:”&vbNewLine&Sheets(“Macro”)。Range(“T2:T25”)。Row

根据以前的选项button的结果禁用选项button:Excel

我正在开发一个项目,要求我根据以前的选项button的结果禁用Excel 2010中的某些选项button。 一些标准将需要多个if语句,类似于嵌套的if语句。 一些信息; 在我的例子中的单元格B107反映了他们可能select的5个选项button中的哪一个。 我已经尝试了下面的代码,但我一直没能find成功。 此外,我将如何使禁用选项button显示为灰色。 Private Sub OptionButton22_Change() If Range ("B108") = 1 Then OptionButton22.Enabled = False Else OptionButton22.Enabled = True End If End Sub

在Excel VBA中评估30+ If Thenexpression式的更快方法

我正在寻求评估单元格的价值对30可能如果然后条件评估二进制(如果x然后y,如果一个然后b没有重复的价值)。 如果单元格(a,35)等于这30个值中的任何一个,则不同单元上的单元格(b,35)将需要用新值覆盖。 运行30+如果然后在电子表格上每行对数似乎是不必要的慢,但我不熟悉任何更快的方式来链接数据对用于这些目的。 任何build议都被赞赏!

自动过滤通过IF和多个标准

修正的问题:下面的代码将filter添加到arrResults。 当macros通过arrResults()过滤字段13时,它只会根据捕获的最后一个值进行过滤。 当运行debugging和查看立即窗口时,我看到在arrResults()中捕获的多个值,但代码只能过滤最后一个条目(即如果我点击“收到/发送/失败”,只有“失败”将返回。 Option Explicit Sub Add_Sheet_Update() Dim LastRow As Long Dim Rng As Range, str1 As String, str2 As String Dim i As Long, wsName As String, temp As String Dim arrResults() With Sheets("All Call Center Detail") LastRow = .Cells(Rows.Count, 1).End(xlUp).Row Set Rng = .Range("A1:BT" & LastRow) End With With Sheets("Search Form") str1 = […]

IF语句工作不正常

我有一个IF声明 =IF(AND(O4="yes",C4<11,MIN(F4,I4,L4)>=0,MAX(F4,I4,L4)<=1),C4+F4+I4,"Green") 但它似乎没有正常工作。 在下面的图片中,您可以看到单元格C4大于11,结果在单元格R4中仍为绿色。 我错过了什么吗? 任何帮助将不胜感激。 错误