Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2013)
オブジェクト変数 As Worksheetの疑問です
投稿日時: 19/11/08 07:41:13
投稿者: beginner001

以下のように記述したものが動作しません。どこに問題があるのかが色々調べていますが、見つからないので質問させてください。
Dim....Asの変数を学習し始めたばっかりです。
Sheet5のA2のセルに「4番松井」と表示されて、MsgBoxにも同様に表示させるつもりでいました。
お分かりになる方、ご教示ください。
 
Sub Sample19()
    Dim N As Long, buf As String, WS As Worksheet
        Set N = 4
        Set buf = "松井"
        Set WS = Worksheets("Sheet5")
    WS.Range("A2").Value = N & "番" & buf
    MsgBox WS.Range("A2").Value
End Sub

回答
投稿日時: 19/11/08 08:16:39
投稿者: simple

そのコードを実行したらどうなりますか?
        Set N = 4
の N= のところがハイライトされ、
コンパイルエラー:オブジェクトが必要です。
となるでしょ?
 
Set ステートメントはオブジェクトを相手に使うものです。
数値Nや文字列bufにはSetは不要です。

       N = 4
       buf = "松井"
としてみてください。
 

投稿日時: 19/11/08 16:48:58
投稿者: beginner001

simple様
ありがとうございました。
単なる変数までもSetをつけていました。