こんにちは。現在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.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
----------------------------------------------
以上です。
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.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.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のプロシージャはなくてもよさそうです。単純にコメントの文章だけを取り出せば良いので。
おかげ様で無事解決いたしました。
答えてくださった方々に感謝します。ありがとうございました。
ポイントは自分の理解度によって付けさせていただきます。
お探しの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も見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
コメントだけコピーペーストしたい(エクセル)
Excel(エクセル)
-
エクセル コメントごとコピー
Excel(エクセル)
-
エクセルでコメントをセルデータとしてコピーしたい
その他(Microsoft Office)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
6
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
7
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
8
VBAのFind関数で結合セルを検索するとヒットしない
Visual Basic(VBA)
-
9
VBAでワークシートを引数としてサンプル関数に渡したい
Visual Basic(VBA)
-
10
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
11
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
12
VBA ユーザーフォームのChangeイベントを停止したい
Access(アクセス)
-
13
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
14
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
15
Excelのセルの色指定をVBAから配列を用いて効率的に行う方法はあり
Visual Basic(VBA)
-
16
split関数で区切り文字がない場合
Visual Basic(VBA)
-
17
screenupdatingが機能しなくて困ってます
Visual Basic(VBA)
-
18
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
19
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
20
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
エクセルで二つの数字の小さい...
-
LOOKUP関数を使えばいいのでし...
-
VBAで文字列を数値に変換したい
-
PowerPointで表の1つの列だけ...
-
エクセルの表から正の数、負の...
-
エクセル 文字数 多い順 並...
-
エクセルで最初のスペースまで...
-
2つのエクセルのデータを同じよ...
-
Excelで半角の文字を含むセルを...
-
エクセルの項目軸を左寄せにしたい
-
Excel、市から登録している住所...
-
エクセル(勝手に太字になる)
-
50人を数回、グループ分けする...
-
エクセルで文字が混じった数字...
-
エクセルの並び変えで、空白セ...
-
オートフィルターをかけ、#N/A...
-
VBA 連続行データを5行ずつ隣の...
-
Excelで、A列にある文字がB列...
-
エクセルで2列のセルを連続して...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで最初のスペースまで...
-
2つのエクセルのデータを同じよ...
-
エクセル(勝手に太字になる)
-
「B列が日曜の場合」C列に/...
-
エクセル 文字数 多い順 並...
-
EXCELで 一桁の数値を二桁に
-
エクセル 同じ値を探して隣の...
-
VBAで文字列を数値に変換したい
-
エクセルの並び変えで、空白セ...
-
Excelで半角の文字を含むセルを...
-
エクセルで文字が混じった数字...
-
Excel、市から登録している住所...
-
A列がない・・・A列が非表示に...
-
エクセルの表から正の数、負の...
-
[関数得意な方]教えて下さい・...
-
エクセルの項目軸を左寄せにしたい
-
エクセル 時間帯の重複の有無
-
Excelにてある膨大なデータを管...
おすすめ情報