![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
こんにちは。現在VBAでデータ集計をしている者です。
作業内容に沿った説明をしていると長くなりそうなので単刀直入に伺います。
たとえば、A列のいくつかの行のセルにコメントが挿入されていたとします。
そのコメントをコピーして、ひとつ隣のB列のセルにコメント"内容"をペーストしたいと考えているのですが、うまくいきません。
何か良い方法はないでしょうか。
その逆(B列のセルのデータをその隣のA列にコメントとしてコピー)なら以下のソースでできるのですが…。
Sub Comment_Copy()
Dim C_str As String
Dim i As Integer
For i = 1 To 100
If ActiveSheet.Cells(i, 2).Value <> "" Then
C_str = ActiveSheet.Cells(i, 2).Value
ActiveSheet.Cells(i, 1).AddComment (C_str)
End If
Next i
End Sub
No.4ベストアンサー
- 回答日時:
Sub Comment_Copy()
Dim i As Integer
For i = 1 To 10
If Not Cells(i, "A").Comment Is Nothing Then
ActiveSheet.Cells(i, "B").AddComment Cells(i, "A").Comment.Text
ActiveSheet.Cells(i, "B") = Cells(i, "A").Comment.Text
End If
Next i
End Sub
以下はテスト中にコメントの抹消用に使ってください。
Sub test02()
For i = 1 To 10
If Not Cells(i, "B").Comment Is Nothing Then
ActiveSheet.Cells(i, "B").Comment.Delete
End If
Next i
End Sub
コメントテキストだけ問題にしてます。
A列からB列です。
どうもありがとうございます。
For Next 文だと理解しやすいですね。(自分だけだと思いますが…
ActiveSheet.Cells(i, "B").AddComment Cells(i, "A").Comment.Text
の分を消せば、test02のプロシージャはなくてもよさそうです。単純にコメントの文章だけを取り出せば良いので。
おかげ様で無事解決いたしました。
答えてくださった方々に感謝します。ありがとうございました。
ポイントは自分の理解度によって付けさせていただきます。
No.3
- 回答日時:
こんばんは。
こうすれば良いと思います。
A列指定なら、
Sub CommentFind()
Dim c As Object
For Each c In ActiveSheet.Comments
If c.Parent.Column = 1 Then
c.Parent.Offset(, 1).Value = c.Shape.DrawingObject.Text
End If
Next c
End Sub
列を指定しないのでしたら、
Sub CommentFind()
Dim c As Object
For Each c In ActiveSheet.Comments
c.Parent.Offset(, 1).Value = c.Shape.DrawingObject.Text
Next c
End Sub
No.2
- 回答日時:
No1です。
申し訳ありませぬ。
わざわざ難しくしておりました。
以下でお願いします。
---------------------------------------------
Sub Test()
Dim myCell As Range
On Error Resume Next
For Each myCell In Range("A:A")
myCell.Offset(, 1).Value = myCell.Comment.Text
Next myCell
End Sub
------------------------------------------
以上です。
No.1
- 回答日時:
こんにちは。
色々方法はあると思いますが、こんなんでもできるよということで。
------------------------------------------------
Sub Test()
Dim myCell As Range
On Error Resume Next
For Each myCell In Range("A:A")
myCell.Comment.Parent.Offset(, 1).Value = myCell.Comment.Text
Next myCell
End Sub
----------------------------------------------
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エラーコード1004 6 2022/06/09 14:12
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) 改行ごとに行を追加し、数量を分割 4 2023/07/11 16:39
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Visual Basic(VBA) Excel VBA キーワードから列を取得して、さらに空欄行を非表示にする 3 2022/10/21 22:49
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) VBA処理追加 こちらでご教示頂いたのですが回答完了させてしまいましたのでこちらからまた質問させてく 2 2022/10/27 09:57
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
コメントだけコピーペーストしたい(エクセル)
Excel(エクセル)
-
エクセル コメントごとコピー
Excel(エクセル)
-
エクセルでコメントをセルデータとしてコピーしたい
その他(Microsoft Office)
-
-
4
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
5
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
6
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
7
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
8
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
11
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
12
VBAでコメントにセルの値の設定
Excel(エクセル)
-
13
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
14
エクセルVBAでシートモジュールでのパブリック変数
Excel(エクセル)
-
15
[VBA]セルのコメントの内容をセルに反映させたい
Access(アクセス)
-
16
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
17
split関数で区切り文字がない場合
Visual Basic(VBA)
-
18
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
19
VBAのFind関数で結合セルを検索するとヒットしない
Visual Basic(VBA)
-
20
マイクロ(μ)の文字を半角で出すには?
英語
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセル 文字数 多い順 並...
-
エクセルで最初のスペースまで...
-
エクセル(勝手に太字になる)
-
「B列が日曜の場合」C列に/...
-
お店に入るために行列に並んで...
-
エクセルで、列の空欄に隣の列...
-
A列がない・・・A列が非表示に...
-
Excel、市から登録している住所...
-
エクセルで文字が混じった数字...
-
2つのエクセルのデータを同じよ...
-
エクセルVBAでコメントのコピー
-
VBAで文字列を数値に変換したい
-
文字列に数字を含むセルを調べたい
-
Excelで半角の文字を含むセルを...
-
【エクセル】指定した文字以外...
-
Excel関数 該当する値を複数抽...
-
エクセルの表から正の数、負の...
-
大量の画像へのハイパーリンク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで最初のスペースまで...
-
2つのエクセルのデータを同じよ...
-
エクセル 文字数 多い順 並...
-
VBAで文字列を数値に変換したい
-
エクセル(勝手に太字になる)
-
エクセルで文字が混じった数字...
-
「B列が日曜の場合」C列に/...
-
エクセルの表から正の数、負の...
-
Excelで半角の文字を含むセルを...
-
エクセル 同じ値を探して隣の...
-
Excel、市から登録している住所...
-
エクセルの項目軸を左寄せにしたい
-
EXCELで 一桁の数値を二桁に
-
VBA 連続行データを5行ずつ隣の...
-
エクセル 時間帯の重複の有無
-
エクセルで、列の空欄に隣の列...
-
オートフィルターをかけ、#N/A...
-
A列がない・・・A列が非表示に...
おすすめ情報