プロが教えるわが家の防犯対策術!

Excel2003でコメントを使用しているのですが、暫くぶりにコメントを編集した時に、何時も困る事がございます。
コメントの『表示』(常時・ポイント時共)では、設定セルの近くにキチンと表示されるのですが、「編集画面(コメントのボックス?)」が、設定セルから程遠い有らぬ位置に飛んでいる経験はございませんでしょうか?

■原因
・列や行等の表示・非表示?
・セルの挿入?
どの時点で飛んでしまったのか理解していないので、私の勝手な想像ですみません…。
コメント設定時には、キチンと設定セルの傍に「編集画面」も有るのですが、日々使用し、忘れた頃に確かめると、あらぬ所に飛んでおります。

■希望
この現象を回避し、「編集画面」もコメント設定セル付近に表示させていたいです。
(1)どの様に設定すれば宜しいでしょうか?
私の経験では、「コメントの書式設定」-「プロパティ」-「オブジェクトの位置関係」で、
a「セルに合わせて~変更をしない」……これが、一番遠くに飛んでしまってました。
b「~移動するが、サイズ変更しない」…遠くに飛んでおります。
c「~移動やサイズ変更をする」…………飛んで行き、かつサイズが0。

(2)全てのコメント位置を一度に修正(コメント設定セルの側に戻す)する方法はございますか?
沢山設定していると、一つ一つ修正する作業はかなり大変です。

過去の履歴でも、解決出来ていないようです。
http://oshiete1.goo.ne.jp/qa886274.html

どなた様か、ご存知の方がございましたら、是非教えて下さい。
宜しくお願い致します。

A 回答 (3件)

コメントの位置を修正するなら以下のような操作が簡単かもしれません。



コメントのシートのA列からデータ範囲の列を選択して、Ctrl+Cでコピーし、空白シートのA1セルでCtrl+Vで貼り付け、そのままもう一度Ctrl+Xで切り取り、元のシートのA1でCtrl+Vで貼り付けます。
    • good
    • 41
この回答へのお礼

MackyNo1様、アドバイス有難うございます。
なるほど……これは素晴らしい方法ですね。
読んだ途端に衝撃が走りました。
素晴らしい発想力に、「頭いい…」と感動してしまいました。
お陰様で、一発で修正出来ました。

今回は既に、時間・労力を費やし、朦朧としながら直しましたが、
次回、喜んで活用させて頂きます。
変な話、教えて頂いた事を実行したいが為に、
「またあらぬ位置に移動してないかな…」と、修正したファイルを確認してしまった程です。(笑)

苦労した分、皆様から頂いたアドバイスは決して忘れることはないでしょう。
この方法は、私だけでなく、他の方々にも必ずや喜ばれる事と思います。

有難うございました。

お礼日時:2009/12/04 12:59

(エクセルの原則)数の多いときはVBA。


沢山のコメントの入ったシートを用意するのは大変なので、少数でしかテストできてませんが。標準モジュールに貼り付け、実行。
Sub Test01()
Dim cl As Range
For Each cl In Range("A1:D20")
If cl.NoteText <> "" Then
MsgBox cl.Address
cl.Comment.Shape.Select True
Selection.ShapeRange.Top = cl.Top + 10
Selection.ShapeRange.Left = cl.Left + cl.Width + 10
cl.Comment.Shape.Visible = False
End If
Next
End Sub

「コメントの枠の左上隅位置」が、「セルの右端上位置」から、下へ10、右に10の位置に揃うと思います。10は適当な好みで。
上記テストではRange("A1:D20")に限定してます。適当に広げてください。
また
cl.Comment.Shape.Visible = False
で見えなくしてますが、cl.Comment.Shape.Visible = Trueにすればコメント枠が見えたままに出来ます(位置の確認ができる)
Msgboxは「コメントあり」のセルを正確に捉えたか確認用。納得すれば削除。
これらコードはマクロの記録を参考にしてますが、コメントのVBAでの扱いは、他と不統一で手こずる。
    • good
    • 2
この回答へのお礼

imogasi 様、アドバイスを頂き、誠に有難うございます。

お忙しい中貴重なお時間を費やしテストを繰返して下さったとの事、心から感謝しております。
私にはコメント操作のVBA知識が無かった故、確認に手間取ってしまい、お礼が遅くなってしまいました。
誠に申し訳ございませんでした。

imogasi 様のアドバイス通りにモジュールを作成し、範囲選択で多少変更を加えて実行した結果、解決出来ました。
楽しくなって、何度もマクロを実行させてしまいました。(笑)
VBAは、「誰でも」という訳にはいきませんが、知識があればこんなにも快適になるのですね。
喜んで活用させて頂きます。
有難うございました。

色々な角度から、難なく解決できてしまう皆様は凄いですね。
知識がある事の素晴らしさを目の当たりにし、「凄いな~」と心底関心致しております。

「(エクセルの原則) 数の多いときはVBA」良く理解致しました。
imogasi 様の様に、サラリとVBAを書ける迄、私も知識を高めたいと思います。

今回はとても勉強になりました。
ご質問させて頂いて良かったです。
有難うございました。

お礼日時:2009/12/08 23:49

こんにちは


>沢山設定していると、一つ一つ修正する作業はかなり大変です。
 私は、この点でコメントを使うのを止めてしまいました。
 ウインドウ枠の固定をやっているとおかしな動きをするし..

 よい解決法が見つかるといいですね。

 ちなみにコメントを止めてから状況に応じて入力規則のメッセージを使うようにしています。 入力規則のメッセージはセルをポイントしないと表示されませんが入力する際のヒントのような場合には適切なので。
    • good
    • 0
この回答へのお礼

A88No8様、アドバイス有難うございます。
A88No8様もご苦労された経験をお持ちなのですね…。
お仲間が居て何だか嬉しい限りです。

「コメントの使用を止められた」との事。
貴重な体験に基づくアドバイス、有難うございました。
そのお陰で、
「なるほど…そういう手も有るな…。
いや、むしろその方が色々と有効活用できて便利かも…」
と新しい発想を得る事が出来ました。
何だか、色々と発想が膨らんできました。有難うございました。

お礼日時:2009/12/04 12:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A