Tag: 查找

在另一个工作簿中查找匹配的单元格值并返回匹配的行内容

我是新来的Excel和VBA,并面临以下任务: 我有两个工作簿 – wookbook1.xlsx包含公司名称,并将持有一个macros, workbook2.xlsx将保存我需要从workbook1匹配的值。 对于workbook1每个公司名称,我需要获取在workbook2find匹配项的行值。 请帮忙。

Excel VBA查找全部

像往常一样,我已经浪费了几个小时在最后放弃和寻求帮助之前处理一个问题,所以任何帮助将不胜感激! 我在我的数据的Sheet Test1上运行一个while循环,以便将数据复制到Sheet Test2中的参数匹配的特定行,但是我目前正在执行此操作的方式也是循环遍历Sheet 2的每一行数据的长度超过5万行,所以尽pipe我的方法对我的10行testing非常有效,但要花费数小时才能处理完整的数据。 我想知道是否有人可以简化我的代码,理想情况下,它可以search匹配的行,而不是比较每个? 我曾尝试使用Find但我不能让它与多个参数的工作。 这是我当前的代码,我省略了设置参数设置以节省空间的部分,但是它们出现在我的工作表中: While row1 <= lastRow1 Param1 = Sheets("Test1").Cells.Range("A" & row1).Value Param2 = Sheets("Test1").Cells.Range("B" & row1).Value Param3 = Sheets("Test1").Cells.Range("D" & row1).Value Param4 = Sheets("Test1").Cells.Range("E" & row1).Value Param5 = Sheets("Test1").Cells.Range("F" & row1).Value Cell_to_copy = Sheets("Test1").Cells.Range("G" & row1).Value *****THIS IS THE BIT I WANT TO OPTIMISE************ For row2 = 2 To […]

Excel – 在行中查找值不是错误或空白

有人发表了一个关于如何做一个列的问题,但我不明白的答案,足以调整它为连续的数据工作。 有人可以帮我理解这个公式是如何工作的,以及如何将它应用于行中的数据? 我想在新列中显示非错误值,而不是行或列的编号。 谢谢! 试试这个公式 = LOOKUP(2,1 /(A1:A100 <> “”),A1:A100) 根据需要扩展范围。 在Excel 2007及更高版本中,您可以使用整个列 这里的原始问题: Excel – 查找列中的最后一个值不是错误或空白

如何在Excel中search另一个范围内的总范围

在Excel中,我需要Sum值,但只有在任何一列文本值出现在特定的列中。 换句话说:“Sum the Values [Column X] where Country = Y,但只有在ID = [A2:A2000中的任何内容,格式化为文本]。如果ID不是范围内的那些值之一,不要求国家= Y的行值被总结。 我不能一行一行,所以我正在寻找一个范围与另一个范围的语法,因为ID“keys”是在一个单独的列中,而不是要求和的国家。 列A =单个国家,在单独的表中,我们有一个非常长的“有效”的ID列表。 从主数据表中,我想按国家Sumif Widgets列,但只有ID =“有效”ID表中的ID之一。

Excel VBA统计search结果

几天前,我问了有关同一个工作簿的问题,它在这里: Excel countif vba代码与标准结果值 所以…我得到了下面的代码。 基本上,它search给定范围内的值,并检查另一个单元格中的某个值 – 然后“计数”。 至less它应该计数,但它只是input1到单元格中。 它工作的很好,但是在给定的范围内可能有多个search结果。 我尝试使用.findnext但它不工作,因为我想。 我也尝试添加另一个.find ,但仍然是失败。 如何应对呢? Sub Wstaw_Szkolenia() Dim MyRange As Range, MyCell As Variant Range("A1").Select liczba = 6 Set MyRange = Range(Selection, Selection.End(xlDown)).Rows.SpecialCells(xlCellTypeVisible) 'PP 2dni 2007 For Each MyCell In MyRange.Cells With Range("pp2dni2007") If .Cells.Find(MyCell.Value) Is Nothing Then Else If .Cells.Find(MyCell.Value).Offset(0, 3).Value = "TAK" Then MyCell.Offset(0, […]

VBA查找function不能与variables一起使用

我正在创build一个工作表,它需要应用程序来searchexcel工作表中保存在variables中的值。 我正在使用“.Find”function。 我的问题是,当它被存储在一个variables名称中时,找不到的值将被find,尽pipe它在我input一个实际值时有效。 例如: 这工作 Dim cellersd, celltid, ersdcol, tidcol Set cellersd = book.Worksheets(mon & yer).Range("5:5").Find("28/08/2013") Set celltid = book.Worksheets(mon1 & yer1).Range("5:5").Find("30/09/2013") If cellersd Is Nothing Then MsgBox "not found" Else MsgBox cellersd.Column End If If celltid Is Nothing Then MsgBox "not found" Else MsgBox celltid.Column End If 这不工作 rsd = Worksheets("workload").Range("p4").Value tid = Worksheets("workload").Range("p3").Value […]

Excel的VBA有点反向查找 – 任何更好的select?

build立 我有两张纸,一张包含文本数据,另一张包含查找数据。 问题 我需要确定一行是否包含匹配的国家/地区名称,并从工作表2中提取相应的ID。这与VLOOKUP或Match函数相反,我正在查找工作表2中的工作表1数据。 任何简单的方法来做到这一点,而不是循环表1数据中的每一行的整个表2数据集?

价值查询和四舍五入的问题

我有一个单元格的值,我想在一个定义的范围内查找该值,然后抓取大于查找单元格范围内的最接近的值。 示例:单元格包含37.24 ,范围有: 2.75 5.5 8.25 11 16.5 22 28 34 40 46 … 对于这个例子,公式应该返回40作为值。 如果原始字段是40.1 ,则会返回46 。

VBA“查找”function发现错误的单元格

我写了一个创buildbutton的VBA“Sub”,该button做了几个工作(我只写了第一个工作的代码,其他工作不相关)。 第一份工作应该是find包含string“Country”的单元格的位置。 所以它会find包含string“Country”的单元格,然后它会find这个单元格的列号(bc)和行号(br)。 值为“Country”的单元格位于“I7”单元格中,或以数字格式“单元格”(7,9)。 它工作没有错误,但我得到不同的结果,如bc = 7和br = 1(“G1”)。 有趣的一点是,单元格“G1”是空的。 现在它给出了像“I4”的结果,它也是空的,你可以看到下面。 有没有人有任何关于这个错误的想法? Private Sub Button1_Click() Dim b1 As Range Dim bc As Integer, br As Integer With Sheet5.Range("a1:z200") Set b1 = .Find(Name:="Country", LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows) If Not b1 Is Nothing Then bc = ActiveCell.Column br = ActiveCell.Row MsgBox (bc) End If End With End Sub

select符合我的查找条件的所有单元格

我正在写一个简单的macros在表中search我的值。 我知道search的值在文档中多次。 但是我的macros在表中find了第一个值。 我想要select具有我正在寻找的值的所有行。 然后我想复制选定的行并将其复制到“sheet2”。 有人可以帮我调整我的macros吗? 谢谢 Sub Vyhladat() Sheets("Sheet1").Columns(24).Find(What:=InputBox("Please enter your LR number", "Search")).Select ActiveCells.EntireRow.Select Selection.Copy Sheets("Sheet2").Select Range("A2").Select Do If IsEmpty(ActiveCell.Value) Then ActiveCell.PasteSpecial xlPasteValues End Else ActiveCell.Offset(1, 0).Select End If Loop End Sub