• ベストアンサー

ExcelVBAについて

「セルA1に「大阪」が含まれる文が入力されるとセルA2に「たこ焼きが名物」を表示」 VBAで組めますか? 演算式を入れれば簡単だと思うのですが、最近VBAを勉強しはじめました。 ちょっとずつ覚えていこう、と思っています。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

>演算式を入れれば簡単だと思うのですが エクセル関数のことだと思いますが、簡単ではないですよ。 >VBA Sheet1のA1:B3に 大阪 たこ焼き 京都 湯豆腐 名古屋 外郎 といったテーブル(対照表)をもっておいて Sheet2のA1に 浪速大阪岩お越し シャチホコの名古屋城 着倒れの京都 とかを入れると たこ焼き 外郎 湯豆腐 がそれぞれSheet2のB1セルにでます。 Sheet2のChangeイベントに貼り付けてください。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Application.EnableEvents = False Dim sh1 As Worksheet Dim sh2 As Worksheet Set sh1 = Worksheets("Sheet1") Set sh2 = Worksheets("Sheet2") '--- d1 = sh1.Range("A65536").End(xlUp).Row For i = 1 To d1 p = InStr(sh2.Cells(1, "A"), sh1.Cells(i, "A")) If p <> 0 Then sh2.Cells(1, "B") = sh1.Cells(i, "B") Application.EnableEvents = True Exit Sub End If Next i End If sh2.Cells(1, "B") = "該当なし" Application.EnableEvents = True End Sub 外套がないときは、該当なしをさします。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • PrintScree
  • ベストアンサー率25% (538/2091)
回答No.1

InStr関数を使用すれば出来ます。 VBAの勉強をするなら、VisualBasicの入門本も参考になりますよ。 頑張って勉強してください。

すると、全ての回答が全文表示されます。

関連するQ&A