Tag: 查找

在行内查找Datevariables并返回Column VBA

我正在寻找一行内的variables,并返回列引用。 我到目前为止写的代码是; Dim VarianceDate As String VarianceDate = Sheets("Summary").Range("C12").Value Rows("6").Find(What:=VarianceDate, After:=ActiveCell, LookIn:=xlFormulas _ , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False).Activate TargetCol = ActiveCell.Column 在这个例子中,Variancedate是01/06/2015,但是当我在VBA中join代码时,它什么都不返回。 除了当我手动search它find正确的单元格。 最终我想使用TargetCol参考来帮助我将正确的数据提取到另一个工作簿中。 任何帮助将是非常appreicated。 谢谢

Excel:使用关键字进行索引匹配,然后使用SUM结果(无VBA)

我有一张交易清单。 它包括交易描述和交易总成本。 我正在寻找一种方法,不使用Visual Basic,使用单元格中input的逗号分隔的关键字来search所有匹配的事务,然后给出它们的总值。 例如: B4:B6是查找的关键字。 对于包含B1中任何关键字的所有单元格,应该在范围B10:B26中查找C4(tesco OR co-op OR waitrose),并返回范围C10:C26中相应值的总值。 在这种情况下,它应该是C11,C16,C21,C23,C25。 请注意,不应区分大小写。 可以这样做吗?

Find()函数查找公式不输出

Private Sub ListBox1_Click() asset = Me.ListBox1.Value ThisWorkbook.Sheets("AssetPurchase").Activate sl = Range("I7", "I500").Find(asset).Row Me.TextBox2.Value = Range("H" & Range("I7", "I500").Find(asset).Row).Value MsgBox (Range("I7", "I500").Find(asset).Row) End Sub 我正在使用上面的子切换工作表,然后searchstring的范围 我遇到的问题是这个范围内的单元格是从其他单元格的内容计算出来的,find()是在范围内search公式而不是公式的输出 我想在一个范围内的公式的输出匹配一个string

'Range.Find'和'Range.FindNext'只在第一​​场比赛中循环

我使用VBA Excel循环访问一组数据。 我正在尝试使用Range.Find和Range.FindNext方法的组合来查找某个string。 我很难找出将这些语句放在哪里,因为我需要它们在对方的范围内,但是同时我不希望第一个Find语句每次都保持执行,因此只能循环播放第一个比赛。 Sub AssignGroups() Dim membership As Worksheet Dim wb As Workbook Dim groups As Worksheet Dim nameRow As Long Dim fullNameString As String Dim nameRange As Range Dim groupRange As Range Dim nameRange2 As Range Dim nameIndex As Long Dim userNameString As String Dim barIndex As Long Set wb = ActiveWorkbook Set […]

发现几乎匹配一个string

我需要检查单元格中的一些小的拼写更改。 我如何比较两个单元格值并获得几乎相等的值。 说如果只有一个字符像“jordan120”和“jordn120”缺失。 我怎样才能得到这些值使用macros? 我有两种情况下的精确匹配和几乎匹配。 我已经尝试了vlookup函数并find方法。 Sub Changes() Dim chang, currentdest, presource As Worksheet Dim precount, currentcount, prelstrow, currentlstrow, rowno, rownow, rownow1 As Integer Dim somstrng, somstrng1, predept, currentdept, pregrade, currentgrade, convertion As String Dim table5, cellfound As Range Set chang = ActiveWorkbook.Sheets("Change") Set presource = ActiveWorkbook.Sheets("Previous") Set currentdest = ActiveWorkbook.Sheets("Current") precds = presource.Range("A" & […]

Sumproduct或Countif在2Dmatrix上

我正在处理来自过敏人群的数据。 每个人都有一个独特的ExceptionID,每个过敏原都有独特的AllergenID(总计451个)。 我有一个数据表有2列(ExceptionID和AllergenID),其中每个人的过敏是逐行列出。 这意味着ExceptionID列对于有多种过敏症的人具有重复值,并且AllergenID列具有针对具有该过敏症的不同人的重复值。 我正在计算这个人群中每对过敏症有多less次(例如过敏原#107和过敏原#108,过敏原#107和过敏原#109等)。 为了简单起见,我创build了451行X 451列的matrix,表示每对(实际上两次,因为A / B和B / A是等价的)。 我不知何故需要使用行名称(allergenid)来查找我的数据表中的ExceptionID,并计数匹配从列名称(也AllergenID)的ExceptionIDs的情况。 我使用Vlookup或Index / Match没有问题,但是我正在努力查找和Sumproduct或Countif公式的正确组合。 任何帮助是极大的赞赏! Mike PS我正在使用Excel 2016,如果这改变了任何东西。 – = UPDATE = – 所以Dirk和MacroMarcbuild议的方法都可以工作,但是我不能将后者应用到我的完整数据集(17,000+行),因为这需要很长时间。 我从那以后决定把它变成一个VBAmacros,因为我们现在想看到三元组而不是对的数量。

单元格数值落在前提范围内的两列查找

我有一个代码列表,如下所示: RF206 RT205 RG20 etc 我有一个代码分类列表,如下所示: Prefix Range start Range end Category RF 1 52 Investment costs RF 53 210 Building costs RT 1 200 Salaries RT 201 256 Bonuses RG 1 19 Restaurant RG 20 30 Transport 我想要做的是能够将代码与类别相匹配,如下所示: RF206 Building costs RT205 Bonuses RG20 Transport 我明白一个VLOOKUP不能工作,因为每个前缀(RT,RF等)有多个值,所以我不能只查找代码前缀。 我需要一种方法来结合寻找一个完全匹配的前缀,并检查数字部分落在范围的两端之间,以带回相应的类别。

findreplacevbscript excel特定的单元格

我想利用查找replaceExcel中的特定单元格上的Vbscript函数。 我目前的代码是: Dim myxl Dim mywb Dim mysh Set myxl = CreateObject("Excel.Application") myxl.Visible = True myxl.DisplayAlerts = False myxl.EnableEvents = False '20160412 BM open the workbook Set mywb = myxl.Workbooks.Open(mysrcfile, True, False, , , , , , , True) '20160523 BM open the sheet Set mysh = mywb.WorkSheets("General") 'The parameters in the following order for: […]

基于前一个单元格的值切换单元格值

我正在寻找一个自动签入电子表格。 当电子表格添加一个新行时,它会检查上次提及的名称的值,并在“in”和“out”值之间切换。 我试图弄清楚,但我不知道如何得到它的工作(而且我对Excel有很大的知识缺乏)。 这是我将有: —————————————— itemName01 | 10/06/16 | in —————————————— itemName02 | 10/06/16 | in —————————————— itemName03 | 10/06/16 | in —————————————— itemName02 | 11/06/16 | out —————————————— itemName01 | 12/06/16 | out —————————————— itemName01 | 13/06/16 | in —————————————— itemName05 | 15/06/16 | in —————————————— itemName01 | 18/06/16 | out 所以对于加classitemName ##被添加它将开始在col3中的“in”,然后切换。 我尝试使用查找,然后反向查找以获得以前的input切换,但它保持与#VAL失败! […]

有条件地格式化单元格,或者根据另一个单元格的内容填充单元格,如果第二个单元格大于3。

我在一个单元格中有一个六位数的参考。 在同一张工作表上,如果数字的第二个数字大于3,我想格式化一个单元格。 我不介意使用查询而不是条件格式。 因为,理想情况下,如果引用的单元格中的第二个数字大于3,我希望在框中放置十字形的“x”,或者至less使用格式化的灰色框。