excel - 对于下一个循环失败:将 Col A(表 1)中的值匹配到 Col A(表 2),然后匹配列
问题描述
我尝试使用在另一个工作簿中找到的代码来适应我的情况,但是在运行时,它不返回任何值。将不胜感激有关如何挽救这一点的任何见解。
目标:构建一个矩阵来显示每个度量并为其使用的维度标记一个“X”。
矩阵表中的 A 列有一个度量列表。随后的列(Col B、C 等)都是维度。
FTD 表中的 Col A 也是一个措施列表,但它们重复了。Col B 是每个度量的对应维度的列表。(与 MATRIX 表中的列名相同)
目标是将 Col A、MATRIX 表中的度量与 > Col A、FTD 表相匹配。如果在 FTD 表中找到,则应检查该度量的相应维度,在 MATRIX 表的列中找到它,并在相应列下标记“X”。
注意:两张表中的尺寸是相同的类型/格式等(它们都来自相同的来源)
Matrix Sheet:
COL A DIMENSION A(Cost) DIMENSION B(Hours Worked) Hours Forecast Accounts Receivable Location
Measure 1 x x x
Measure 2 x x
Measure 3 x
Measure 4 x x x
FTD Sheet:
COL A COL B
Measure 1 DIMENSION A(Cost)
Measure 1 Hours Worked
Measure 1 Hours Forecast
Measure 2 Accounts Receivable
Measure 2 Location
Measure 3 Location
下面的代码:
Public Sub ltdsol()
Set sht = Worksheets("Matrix")
Set sht2 = Worksheets("FTD")
MATRIXLastRow = sht.Cells(sht.Rows.Count, 1).End(xlUp).Row
FTDLastrow = sht2.Cells(sht2.Rows.Count, 1).End(xlUp).Row
For i = 2 To MATRIXLastRow
' Find the row with a matching Case ID/Client Name
For k = 2 To FTDLastrow
If sht.Cells(k, 1).Value = sht2.Cells(i, 1).Value Then _
Exit For
Next
q = 3 ' Starting column for Questions, look for a matching question/header (or blank)
Do Until sht2.Cells(1, q).Value = sht.Cells(i, 3).Value Or sht2.Cells(1, q).Value = vbNullString
q = q + 1
Loop
' Write the Response
sht2.Cells(k, q).Value = "X"
Next
End Sub
将不胜感激任何帮助。谢谢你。
解决方案
推荐阅读
- web-scraping - 用 scrapy 抓取 html 表并将数据合并到 mongodb
- docker - Docker swarm 容器无法连接
- java - Firebase:在我说之前不要向所有听众发送消息
- macos - 使用 JXA (macOS) 通过捆绑签名调用应用程序
- javascript - 如何将我的 express 服务器(使用 graphql)部署到 Heroku。目前卡在构建中
- azure-devops - 根据另一个字段或规则的值,揭开 Azure DevOps 中某个字段的允许值的神秘面纱?
- angular - 我如何以反应形式调用Angular中的函数
- excel-formula - 忽略文本的最大公式
- javascript - 将 HTML 转换为水晶报表
- php - 在 PrestaShop 中将产品添加到购物车时出现致命错误