Tag: 查找

VBA – 使用.Find方法进行故障排除

我正在使用.Find方法来查找包含部分值“TL”和“CT”的行中的单元格。 代码当前所做的是查看C列中的每一行,修剪“TL-”(即“TL-”,“TL – ”,“TL – ”)的任何变化,然后将其后的数字限制为只有6数字。 例如:如果有5个数字,则在“TL-”后加0,如果有4个数字,则在“TL-”后加2个0。 我在单元格中有其他值,所以它现在所做的是更改所有值来执行上述方法(如下所示) Start: Output: TL-000872 -> TL-000872 TL-0786 -> TL-000786 CT-74 -> TL-000074 GS8; 278K -> TL-008278 我需要做的是正在工作的代码,但只在包含一些“TL”值的单元格上,执行相同的代码,但在包含一些“CT”值的单元格上只有4个数字,并跳过(原样保留) 还要别的吗。 Start: Output: TL-000872 -> TL-000872 TL-0786 -> TL-000786 CT-74 -> CT-0074 GS8; 278K -> GS8; 278K 我的.Find方法是绝对不行的。 我认为这是主要的问题; “TL”和“CT”的单元格不正确。 有什么build议么? 注意:StartSht是工作簿与所有值被更改的代码存在。 Dim str As String, ret As String, tmp As […]

发现选定月份的最后一天

我有这个代码,可以让我find给定的月份的第一个或最后一个给定的一天。 = DATE(B2,A2,1 + 7 * N)-WEEKDAY(DATE(B2,A2,8-xday)) B2 =年 A2 =月 我是否想find第一,第二,第三,第四或第五个事件 xday =是代表星期几的数字(1 = Sun到7 = Sat) 我想要的东西只能find给定月份的最后一天,而不需要确定月份是否有4或5个星期一。 如果有人能告诉我如何在VBA中创build我想要的结果,那将是完美的。

(Excel)查找哪里查找值不完全在数组中

背景:我通常会在5,8,9和12个月的时间段内对选定的类别进行“全面评价”,这个时间表摘录如下图所示(F1:I13)。 例如,对于类别101,我通常会在第5,9和12个月进行全面检查(如单元格F8:F10所示;请注意,列F中的值的格式为[Category]-[Month]单元格F2是12月12date间类别085的查找键)。 正常过程示例:如果在2015年5月对类别101进行全面审查,我将在单元格B2:B3中input“5”和“2015”,则单元格B5:B6将适当地VLOOKUP第一个和第二个前评论的类别。 所以在这种情况下, B5.Value()= 12.2014 B6.Value()= 9.2014 问题:我已经开始了一个过程,在这个过程中,我打算在所有的月份中进行部分审查,但是我没有对每个类别进行全面的审查,但是在第一个和第二个完整的审查date之后,这个过程将不再起作用。 例如,如下所示,如果我想在2015年6月份进行部分审查,我想在单元格B5:B6中插入“5.2015”和“12.2014”。 我碰到的问题是,右侧的数组是由外部来源生成的,我不能真正做任何事情来编辑它(它也比我已经显示的摘录大得多,而且太多的东西取决于它的当前格式;数组在每年年初被更新)。 是否有一个巧妙的方法来找出如何在部分审查期间查找适当的先前完整审查date,部分审查date在查找数组(查找键)的第一列中没有明确定义?

在HLOOKUP后获得最小值

我有一个像这样的查找表: abcd 1 2 3 4 和一个填充值为a , b , c或d ,例如: dbbdc 我想通过单个公式中的表进行查找后得到最小值。 像MIN(HLOOKUP(…)) 。 在上面的例子中,结果是2。 我知道我可以用HLOOKUP创build一个新行,然后在这一行上做一个MIN。 但在我的真实情况下,我有几行和几个查找表,我想避免有许多中间行。 你有什么主意吗?

结合数据使用R(或者也许Excel) – 循环匹配刺激

我有两组数据,分别对应于我想要合并分析的不同实验任务。 问题是我需要search和匹配特定的刺激和特定参与者的某些行。 我想用一个脚本来节省一些麻烦。 这可能很简单,但我从来没有做过。 这是我的问题更具体:在第一个数据集中,每行对应于两个替代强迫select任务,其中两个刺激一次呈现,参与者select一个。 在第二个数据集中,每行对应于单个项目任务,其中参与者被询问他们是否曾经见过刺激。 第二个任务中的刺激与第一个任务中对的刺激相匹配(两倍多)。 我希望能够匹配并在第一个数据集中添加两列 – 一个表示左侧项目是否稍后被识别,另一个是右侧刺激。 我认为这可以用嵌套循环完成,但我不知道是否有一个优雅的方式来做到这一点,也许是一个包。

使用FIND函数返回VBA中的最后一个值

我正在尝试编写一个函数来search列,并返回包含最后一个匹配的单元格。 例如,如果我有单元格A5作为我的活动单元格 A1 -> Text A2 -> wefwqef A3 -> Text A4 -> eorbebr 我想要通过数组search“文本”,并为它返回单元格A3,因为这是最后一场比赛。 但如果我有单元格A7作为我的活动单元格 A1 -> Text A2 -> wefwqef A3 -> Text A4 -> eorbebr A5 -> fhyeher A6 -> Text 然后它会返回A6作为我的结果。 我一直在玩FIND函数试图让它工作,但我不断收到错误(应用程序或基于对象的错误)。 我的计划是作为一个更大的循环的一部分执行这个代码,在每种情况下,它返回最接近活动单元格的值。 (我希望这是有道理的) 这是迄今为止的代码: Range("A19:I19").Select 'ActiveCell.FormulaR1C1 = Sheets("Sheet1").Cells(9, 5).Value & ":5 CTs, O/C " & _ 'Sheets("Sheet1").Cells(9, 8).Value * 100 […]

使用excel查找时间序列

我对.find命令有问题。 我想要创build一个macros来复制一个范围,并将其粘贴到find命令find的特定单元格之后(偏移量将活动单元格移动到数据值): Sub value() Dim today As String Dim lookfor As Range Sheets(1).Range("C3:C19").Copy today = "11.nov" Set lookfor = Cells.Find(What:=today, _ After:=ActiveCell, _ LookIn:=xlValues, _ LookAt:=xlPart, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlNext, _ MatchCase:=False, _ SearchFormat:=False).Activate lookfor.Offset(rowOffset:=1, columnOffset:=3).Paste End Sub

根据单元格值删除行

我正在试图在Sheet2中的Sheet A中searchSheet1中A1的值。 如果存在,我想删除Sheet2中的整个行。 如果它不存在,我想要打开消息框。 这是我所拥有的,但我正在努力实际删除该行: Sub Delete_Rows() Dim FindString As String Dim Rng As Range FindString = Sheets("Sheet1").Range("A1") If Trim(FindString) <> "" Then With Sheets("Sheet2").Range("A:A") Set Rng = .Find(What:=FindString, _ After:=.Cells(.Cells.Count), _ LookIn:=xlValues, _ LookAt:=xlWhole, _ SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=False) If Not Rng Is Nothing Then 'I can't figure out how to delete the […]

excel vba查找关键字列表,如果存在查找值,然后编辑另一个单元格的值

我有一个列表,每个人吃一种特定的蔬菜。 例如,约翰,史密斯吃土豆和番茄。 比尔,彼得吃胡萝卜,洋葱。 我已经创build了一个列表,看起来像这样的关键字 现在,我收到一个数据摘录,其中有一个名称列表以及他们吃的食物的自由文本描述。 这是我得到的 不幸的是,我得到了一些我不想要的名字,比如John,Smith(Primary Customer),我希望excel可以添加他们吃的蔬菜,因为它是写在描述中的。 例如,John,Smith(主要客户)的描述是:“他有炸薯条和楔子”,并且由于描述中包含的关键字列在我的初始表中,对于同一个人,他的名字将从John,Smith(主要客户)转交给John,Smith-Potato(主要客户)。 我想要excel来检查名称是否存在于第一个表中,然后查看描述来find任何关键字。 这将确保如果手头的名字不包含在我的清单中,那么Excel不会花时间寻找关键字。 另外,如果没有find关键字,那么不要编辑名称。 这是我期望得到的 这里是代码尝试如此之多…我不断收到一个错误,我没有达到的目的来validation这个代码,以检查它是否给了我我正在寻找的结果..任何帮助,非常感谢。 Option Explicit Sub homework() Dim ws1 As Worksheet, ws2 As Worksheet, keywords() As String, lastRow As Integer, lastRow2 As Integer, c As Variant, x As Integer, y As Integer, k As Variant, cel As Range, descript As Range Dim SrchRng As […]

Excel VBA – 在合并的单元格上查找

我无法使用合并单元格上的VBA查找function。 如果我解开那个单元格,它会正确地find这个单元格。 有没有解决这个问题? Private Sub FindTry() Dim oFind As Range With Sheet2 Set oFind = .Cells.Find("/", , xlValues, xlPart) If oFind Is Nothing Then MsgBox "/ NOT found" Else MsgBox "/ found" End If End With End Sub 这里是链接文件下载链接