Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4860 / 13646 ツリー ←次へ | 前へ→

【53979】コメント入力状態でマクロ終了 わさび 08/2/19(火) 15:07 質問[未読]
【53980】Re:コメント入力状態でマクロ終了 マクロマン 08/2/19(火) 15:32 発言[未読]
【53981】Re:コメント入力状態でマクロ終了 マクロマン 08/2/19(火) 15:34 発言[未読]
【53983】Re:コメント入力状態でマクロ終了 わさび 08/2/19(火) 16:01 お礼[未読]
【53982】Re:コメント入力状態でマクロ終了 Jaka 08/2/19(火) 15:42 発言[未読]
【53985】Re:コメント入力状態でマクロ終了 わさび 08/2/19(火) 16:21 お礼[未読]
【53986】Re:コメント入力状態でマクロ終了 Jaka 08/2/19(火) 16:33 発言[未読]
【53987】Re:コメント入力状態でマクロ終了 わさび 08/2/19(火) 16:38 発言[未読]
【53989】Re:コメント入力状態でマクロ終了 Jaka 08/2/19(火) 17:00 発言[未読]
【53994】Re:コメント入力状態でマクロ終了 わさび 08/2/19(火) 17:38 発言[未読]
【53998】Re:コメント入力状態でマクロ終了 bykin 08/2/19(火) 21:19 発言[未読]
【54014】Re:コメント入力状態でマクロ終了 わさび 08/2/20(水) 8:20 お礼[未読]
【54017】Re:コメント入力状態でマクロ終了 Jaka 08/2/20(水) 9:19 発言[未読]
【54016】Re:コメント入力状態でマクロ終了 わさび 08/2/20(水) 8:22 お礼[未読]

【53979】コメント入力状態でマクロ終了
質問  わさび  - 08/2/19(火) 15:07 -

引用なし
パスワード
   コメント挿入の際、こだわりの仕様があるのですが、
いつも同じ設定をするのが面倒なので、以下のマクロを組みました。

----------------------
Sub コメントを入れる()

  With Selection
    .AddComment
      
    With .Comment
    
      With .Shape
        .Line.Visible = msoFalse
        .Fill.PresetTextured msoTextureMediumWood
      
        With .TextFrame
          .AutoSize = True
          .VerticalAlignment = xlCenter
    
          With .Characters.Font
            .Name = "MS Pゴシック"
            .FontStyle = "標準"
            .Size = 10
            .ColorIndex = 2
          End With
        
        End With

      End With
        
    End With
  
  End With

End Sub
--------------

これで後は、毎回コメント文を手入力すればOKなんですが、
せっかくなら、このコードを改良し、
すぐにでも入力ができる状態(「コメントの編集」をクリックした状態)に
なっていればすごく便利なんですが、どうしたらいいのかがわかりません…
マクロの記録でも、コメント入力中は記録取れないんです。
過去ログも検索しましたが、キーワードが悪いのか、ヒットしません。

ヒントだけでも構いませんので、ご指南いただけませんでしょうか。
よろしくお願い致します。

Win2000, Excel2003

【53980】Re:コメント入力状態でマクロ終了
発言  マクロマン  - 08/2/19(火) 15:32 -

引用なし
パスワード
   不安定な方法ですが・・・。

Application.SendKeys ("%IM")

【53981】Re:コメント入力状態でマクロ終了
発言  マクロマン  - 08/2/19(火) 15:34 -

引用なし
パスワード
   思いっきり勘違いでした。
てっきりセルにコメントを挿入したいのかと・・・。

私のレスはスルーしてください。

【53982】Re:コメント入力状態でマクロ終了
発言  Jaka  - 08/2/19(火) 15:42 -

引用なし
パスワード
         With .Shape
        .Line.Visible = msoFalse
        .Fill.PresetTextured msoTextureMediumWood
        With .TextFrame
          .AutoSize = True
          .VerticalAlignment = xlCenter
          With .Characters.Font
            .Name = "MS Pゴシック"
            .FontStyle = "標準"
            .Size = 10
            .ColorIndex = 2
          End With
        End With
        .Select
        Application.SendKeys " "
        Application.SendKeys "{BackSpace}"
      End With

とか。

【53983】Re:コメント入力状態でマクロ終了
お礼  わさび  - 08/2/19(火) 16:01 -

引用なし
パスワード
   ▼マクロマン さん:

ご一読いただいただけでも幸いです。
ありがとうございました。

【53985】Re:コメント入力状態でマクロ終了
お礼  わさび  - 08/2/19(火) 16:21 -

引用なし
パスワード
   ▼Jaka さん:

ご回答いただき、ありがとうございます。

早速試してみたところ、
 .Select 
で、「'Select'メソッドは失敗しました。'Shape'オブジェクト」というエラーになりました。

すでにコメントがあるセルで、
 Selection.Comment.Shape.Select
と試しましたが、これも同様のエラーが出てしまいました。
セレクトできないんですね…残念です…


>      With .Shape
>        .Line.Visible = msoFalse
>        .Fill.PresetTextured msoTextureMediumWood
>        With .TextFrame
>          .AutoSize = True
>          .VerticalAlignment = xlCenter
>          With .Characters.Font
>            .Name = "MS Pゴシック"
>            .FontStyle = "標準"
>            .Size = 10
>            .ColorIndex = 2
>          End With
>        End With
>        .Select '←ここでエラー
>        Application.SendKeys " "
>        Application.SendKeys "{BackSpace}"
>      End With
>
>とか。

【53986】Re:コメント入力状態でマクロ終了
発言  Jaka  - 08/2/19(火) 16:33 -

引用なし
パスワード
   え〜と、あのコードだけでは動きませんよ。
下の部分、他を端折ってます。

Sub コメントを入れる()

  With Selection
    .AddComment
      
    With .Comment

【53987】Re:コメント入力状態でマクロ終了
発言  わさび  - 08/2/19(火) 16:38 -

引用なし
パスワード
   ▼Jaka さん:
>え〜と、あのコードだけでは動きませんよ。
>下の部分、他を端折ってます。
>
>Sub コメントを入れる()
>
>  With Selection
>    .AddComment
>      
>    With .Comment


はい、もちろん承知しております。
上記のとおり、試しております。
が、ダメでした…

【53989】Re:コメント入力状態でマクロ終了
発言  Jaka  - 08/2/19(火) 17:00 -

引用なし
パスワード
   win2000 & EXL2002ではなんとも無いんですが。
何か非表示セルだとエラーになるとか聞いたことがある。
他、実行の仕方が違うとか?これは全く関係ないと思うけど。


Sub コメントを入れる()
  With Selection
    .AddComment
    With .Comment
      With .Shape
        .Line.Visible = msoFalse
        .Fill.PresetTextured msoTextureMediumWood
        With .TextFrame
          .AutoSize = True
          .VerticalAlignment = xlCenter
          With .Characters.Font
            .Name = "MS Pゴシック"
            .FontStyle = "標準"
            .Size = 10
            .ColorIndex = 2
          End With
        End With
        .Select
        Application.SendKeys " "
        Application.SendKeys "{BackSpace}"
      End With
    End With
  End With
End Sub

【53994】Re:コメント入力状態でマクロ終了
発言  わさび  - 08/2/19(火) 17:38 -

引用なし
パスワード
   ▼Jaka さん:

下記のいただいたコードをそのままコピペしてみましたが、
やはり同様のエラーとなります。
セルは非表示ではありません。
新規ブックでも試しましたが、同様です。

Jakaさんとの違いは、Excel2002か2003かということですね…(-_-;


>win2000 & EXL2002ではなんとも無いんですが。
>何か非表示セルだとエラーになるとか聞いたことがある。
>他、実行の仕方が違うとか?これは全く関係ないと思うけど。
>
>
>Sub コメントを入れる()
>  With Selection
>    .AddComment
>    With .Comment
>      With .Shape
>        .Line.Visible = msoFalse
>        .Fill.PresetTextured msoTextureMediumWood
>        With .TextFrame
>          .AutoSize = True
>          .VerticalAlignment = xlCenter
>          With .Characters.Font
>            .Name = "MS Pゴシック"
>            .FontStyle = "標準"
>            .Size = 10
>            .ColorIndex = 2
>          End With
>        End With
>        .Select
>        Application.SendKeys " "
>        Application.SendKeys "{BackSpace}"
>      End With
>    End With
>  End With
>End Sub

【53998】Re:コメント入力状態でマクロ終了
発言  bykin  - 08/2/19(火) 21:19 -

引用なし
パスワード
   >Jakaはん

2000でも2002でも2003でもSelectのとこでエラーになりまっせ。
CommentのVisibleをTrueにせんとあかんみたいです。

Sub コメントを入れる()
  With Selection
    .AddComment
    With .Comment
      .Visible = True '<=====コメントを常に表示
      With .Shape
        .Line.Visible = msoFalse
        .Fill.PresetTextured msoTextureMediumWood
        With .TextFrame
          .AutoSize = True
          .VerticalAlignment = xlCenter
          With .Characters.Font
            .Name = "MS Pゴシック"
            .FontStyle = "標準"
            .Size = 10
            .ColorIndex = 2
          End With
        End With
        .Select
        Application.SendKeys " "
        Application.SendKeys "{BackSpace}"
      End With
    End With
  End With
End Sub

但し、これやったらコメントを手動で非表示に戻す必要があります。

確認してみてな。
ほな。

【54014】Re:コメント入力状態でマクロ終了
お礼  わさび  - 08/2/20(水) 8:20 -

引用なし
パスワード
   ▼bykin さん:

動作確認ができました。
コメントを手動で非表示にする点は、これから仕様検討いたしますが、
昨日一日悶々としていたものがスッキリいたしました。
ありがとうございました!

>2000でも2002でも2003でもSelectのとこでエラーになりまっせ。
>CommentのVisibleをTrueにせんとあかんみたいです。
>
>Sub コメントを入れる()
>  With Selection
>    .AddComment
>    With .Comment
>      .Visible = True '<=====コメントを常に表示
>      With .Shape
>        .Line.Visible = msoFalse
>        .Fill.PresetTextured msoTextureMediumWood
>        With .TextFrame
>          .AutoSize = True
>          .VerticalAlignment = xlCenter
>          With .Characters.Font
>            .Name = "MS Pゴシック"
>            .FontStyle = "標準"
>            .Size = 10
>            .ColorIndex = 2
>          End With
>        End With
>        .Select
>        Application.SendKeys " "
>        Application.SendKeys "{BackSpace}"
>      End With
>    End With
>  End With
>End Sub
>
>但し、これやったらコメントを手動で非表示に戻す必要があります。

【54016】Re:コメント入力状態でマクロ終了
お礼  わさび  - 08/2/20(水) 8:22 -

引用なし
パスワード
   ▼Jaka さん:

bykinさんから補足をいただき、解決することができました。
ありがとうございました!

【54017】Re:コメント入力状態でマクロ終了
発言  Jaka  - 08/2/20(水) 9:19 -

引用なし
パスワード
   こんにちは。
▼bykin さん:
>>Jakaはん
>
>2000でも2002でも2003でもSelectのとこでエラーになりまっせ。
>CommentのVisibleをTrueにせんとあかんみたいです。
ツール → オプション → 表示 の、
コメントの欄は、「コメントとコメントマーク」にチェックしているので
気がつきませんでした。
すみません。

4860 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free