2

なぜVBAがこれで私に怒鳴っているのかわかりません。非常に単純なコードで、if ステートメントが 1 つだけ含まれており、"Starting" If とそれに対応する End If が明確に含まれています。私は VB.NET 開発者なので、見落としているのは構文の違いかもしれません。

 Sub splitter()
   Dim line() As String
   Dim rng As Range
   Dim row As Range
   Dim cell As Range
      For Each row In rng.Rows
        If row.Value <> "" Then
            line = Split(Range(row, 1), ",")
            Select Case line(0)
               Case "Desktop"
                   Range(row, 8).Value = "Desktop"
               Case "Laptop"
                   Range(row, 8).Value = "Laptop"
               Case "Server"
                   Range(row, 8).Value = "Server"
               Case Else
                   Range(row, 8).Value = "N/A"
        End If
       Next
    End Sub

具体的には、最終結果は、「親」ドロップダウン リスト (Range(row, 1)) から行われた選択に基づいて、「Child」ドロップダウン リスト (Range(row, 8)) に入力されます。問題が発生するため、VBA を使用してこれを行っているのは、Split() 関数を使用して、Parent ドロップダウン リストの項目を作成する方法などを使用できるためです。「デスクトップ、デル、745」。また、私は Excel 開発者よりも優れたプログラマーです。

4

1 に答える 1

8

あなたのselect文には終わりが必要です:

Select Case line(0)
   Case "Desktop"
       Range(row, 8).Value = "Desktop"
   Case "Laptop"
       Range(row, 8).Value = "Laptop"
   Case "Server"
       Range(row, 8).Value = "Server"
   Case Else
       Range(row, 8).Value = "N/A"
End Select
于 2012-07-12T20:28:56.203 に答える