私は、次のことを行うプログラムの一部に取り組んでいます。
1)特定のセルに「X」があり、ヘッダーがユーザー入力と一致するかどうかを判断します
2) true の場合、ヘッダーの内容をクラスの要素に追加します
たとえば、行の「clutch」ヘッダーの下に「X」がある場合、「clutch」が、この場合は pos.clutch に追加されます。
これがこれを達成するものです(編集:これはDo Whileループ内にあるため、R + 1です。最初に明確にされていなかった場合は申し訳ありません):
If sh.Cells(R + 1, Clutch) = "X" And _
sh.Cells(1, Clutch).Value = CStr(cboPart.Value) Then
pos.Clutch = sh.Cells(1, Clutch)
さて、問題は、各要素の ElseIf ステートメントの長いリストがあることです (合計で 6 つあります)。これを For ループに変換したいと思います。いくつかの調査の後、クラスに含める配列を考え出しました。モジュールは、配列内の各値をループするだけでよいため、最良の方法です。
クラス モジュール内のクラス要素で構成される配列を作成する方法と、For ループ内の各クラス要素の値を設定できるかどうかを知りたいです。さらに、より良い解決策があれば、それについてもっと知りたいです。