****************************

****************************。Select。エクセルVBAで困って
下記のようプログラミングたいのエラーでます
正いコードご教示お願い致ます *****************************
A1プルダウンでパターン1?パターン2?パターン3リストつくり
パターン1選べばB2の値A5表示
パターン2選べばC2の値A5表示
パターン3選べばD2の値A5表示
*****************************

Sub test00()

Dim signal As String
singal = Worksheets Range("A1") Value

Dim result As Range
Set result = Worksheets Range("A5")

Select Case signal
Case "パターン1"
result Value = Worksheets Range("B2")

Select Case signal
Case "パターン2"
result Value = Worksheets Range("C2")

Select Case singal
Case "パターン3"
result Value = Worksheets Range("D2")

End Select

End Sub「*****************************」に一致する情報は見つかりませんでした。

Select Case singal を3回書いているので補足に書いたエラーになります。あとWorksheets.RangeA1.Valueという書き方も間違いで、アクティブシートを対象にするならWorksheets. は不要です。シートの指定をするならこんな感じで。この処理に変数は必要ないと思います。Sub test00With WorksheetsSheet1Select Case .RangeA1.ValueCase パターン1.RangeA5.Value = .RangeB2Case パターン2.RangeA5.Value = .RangeC2Case パターン3.RangeA5.Value = .RangeD2End SelectEnd WithEnd SubWorksheetsというのはワークシートオブジェクトの集合体であるコレクションです。そのコレクションのなかからどのワークシートなのかという単体のワークシートを指定する必要があります。指定の方法としてはワークシート名で指定するかインデックス番号で指定する方法があります。例ワークシート名が「Sheet1」のセルA1ならWorksheetsSheet1.RangeA1左から2つめのワークシートのセルA1ならWorksheets2.RangeA1詳しくは下記サイト参照ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です