2014-06-24 37 views
0

我有一个列表中有破折号的部分(例如1230-921),我想从列表中找到某些有关该部分的信息进行操作。具体而言,我想复制零件中的值并将其粘贴到另一个工作表中。我有一个包含零件清单的下拉菜单。 我有一张纸上的数据按照前面提到的零件号排序。在另一片我想进入PN和教职员选择从数据表为什么我的选择案例找不到价值?

Sub Recommend_2() 

Dim somearray(28) As Variant 
Dim i As Integer 
Dim ALT As Variant 
For i = 1 To 28 
    ALT = Worksheets(3).Range("B15").Value 
     Select Case ALT 
      Case "1230-921" 
       Worksheets(3).Range("C16").Copy 
       Worksheets(3).Range("B5").PasteSpecial 
      Case Else 
       MsgBox "Error" 
     End Select 
Next i 

末次

这在目前的工作最适合我的存储信息。问题是它无法找到案例,并返回28个错误。我已经改变了维度变量,范围位置整个九码。即使是一个新的想法,任何帮助都是受欢

综上所述)

  1. 我想找到的部分,从下拉菜单中
  2. 我希望能够在名单上的部分内操纵的值
  3. 我会喜欢这样做的28个部分
+1

你有没有在ALT中赋值的断点?那里放着什么?如果需要,可将MessageBox与您的错误一起使用。 –

+0

此代码**仅**看着'范围(“B15”)'。你为什么在循环中这样做?而'Range(“B15”)'实际上是什么值? –

+0

它不会给我一个断点错误。该程序直接通过案件的其他错误,并给我的msgbox 28。 – JBlake92

回答

0

不知道如果没有您的实际电子表格,怎么回事,但我会建议在您的错误中包括ALT。

ALT = Worksheets(3).Range("B15").Value 
    Select Case ALT 
     Case "1230-921" 
      Worksheets(3).Range("C16").Copy 
      Worksheets(3).Range("B5").PasteSpecial 
     Case Else 
      MsgBox "Error: Value Found was:" & ALT 
    End Select 
+0

很酷!我要试一试 – JBlake92

+0

谢谢。这让我看到我的工作表已关闭。我用这个,它恢复正确。然后我尝试使用ALT作为(“B14:B18”)之间的范围,并且它在“1230-921”上返回不匹配错误。 – JBlake92

+0

您的不匹配错误是B14:B18的范围不是字符串。所以你将一个范围与一个字符串进行比较,计算机会变成“呃?”。就好像你在问它比较苹果和橘子。 –