我遇到以下情况: 在工作表(下拉列表)中,我有2列包含产品名称及其各自的ID。在另一个工作表(SelectProduct)中,我有一个产品名称的下拉列表,我写了一些VBA代码以允许多个选择。Excel:拆分分隔字符串并检索字符串中每个元素的数字值
有什么方法可以对产品字符串执行类似分割的操作,并检索每个产品的ID,然后将每个ID放在不同的单元格中作为字符串?
例如。单元格A2中的初始字符串是Product1; Product2; Product3,我想在另一个单元格中以ID1; ID2; ID3结尾。
编辑:上面只是一个例子来得到我需要什么的想法。 我的列具有606种产品,具有ID的范围从1到606
另一个例子:字符串中细胞轮胎;保险杠;头盔
那些特定产品 - 156的ID的结果; 35; 310
ID将不会按顺序排列,因为它取决于产品的选择顺序。
可能不是最好的**解决方案,但也许是一个UDF,它使用'Split'方法将单元格A2加载到数组中,比查找每个ID并将其写回单元格? –
ID值在哪里?一种方法是将字符串读入为变量,使用“;”将变量分割为数组。作为分隔符,遍历数组遍历数组,查找数组中项目的每个ID值,将结果匹配连接到一个字符串,然后将该字符串吐出到表单中。 – sous2817
如果总是说'产品',那么为什么不直接用'ID'替换'产品'呢? MsgBox替换(Application.Range(“A2”),“Product”,“ID”) – PractLogical