我正在尝试为excel编写一个宏来搜索Sheet1
和
- 查找单词Force和Grade的所有实例,然后
- 复制这些单词下方的单元格(所有单元格到第一个空行),然后粘贴到
Sheet2
.
这些词(Force和Grade)可以在 Worksheet1 的任何单元格中找到,并且每次创建文件时,使用区域的大小都会发生变化。
到目前为止,我只能让它找到每个单词的第一个实例。我从本网站和其他网站的示例中尝试了多种类型的循环。
我觉得这应该很简单,所以我不确定为什么我找不到解决方案。我尝试了一个以For i To ws.Columns.Count
(“ws”设置为 Sheet1)开头的 For Next 循环,但它变成了一个无限循环(尽管总列数只有 15 左右)。任何朝着正确方向的帮助或推动将不胜感激。
这是到目前为止有效的代码:
我的代码
'COPY AND PASTE ALL FORCE VALUES TO FROM SHEET1 TO SHEET2
Sheets("Sheet1").Select
Cells.Find(What:=strSearch1, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Activate 'select cell below the word "Force"
Range(ActiveCell, ActiveCell.End(xlDown)).Select 'select all cells after "Force" to first empty cell
numBonds = Range(ActiveCell, ActiveCell.End(xlDown)).Count
Selection.Copy
Sheets("Sheet2").Select
Cells(Selection.Row, Columns.Count).End(xlToLeft).Offset(0, 1).Select 'paste to next column
ActiveSheet.Paste