![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?08b1c8b)
VBAで対象範囲の背景色が黒の部分のみ"-"をいれるという処理をしたいのですが、ループがうまく動いておらず最初のセルのみ"-"が入った状態です。
※対象範囲のセルは3列ずつ結合されています
コードは以下になります。VBA初心者のため、初歩的な質問かもしれませんがご回答よろしくお願いいたします。
Private Sub CommandButton1_Click()
Dim C As Range
Sheets("sheet1").Select
T33:BA74 の範囲を1セルずつ繰り返す
For Each C In Range("T33:BA74")
セルが黒のとき
If C.Interior.ColorIndex = 1 Then
C.Value = "-"
end If
'次のセルへ
Next
End Sub
No.4ベストアンサー
- 回答日時:
A1:F10の範囲で、
[A1+B1][C1+D1][E1+F1]
[A2+B2][C2+D2][E2+F2]
:
[A10+B10][C10+D10][E10+F10]
というようにセルを結合して、[E3+F3][A4+B4][C6+D6]を黒くして、
Dim C As Range
For Each C In Range("A1:F10")
If C.Interior.ColorIndex = 1 Then
C.Value = "-"
End If
Next
を試してみたところ、黒いセルのすべてに"-"が入りましたよ。
No.3
- 回答日時:
セルを結合して結合されている2番目3番目のセルを参照するような場合を想定しているのでしょうか
それならユーザー関数を使って左肩のセルを取り出してやればいいように思います
Function GetTopLeftCell( r as Range) as Range
if r.MergeCells = false then
' 結合していないので そのままrを返す
Set GetTopLeftCell = r
else
Set GetTopLeftCell = r.MergeArea.Reange("A1")
end if
End Function
No.1
- 回答日時:
これはExcelの仕様のようですよ
A1:C1に 『1』『1』『1』と入力して セルの結合をしてみてください
アラートが出ると思います
その文言の中に『左上のセルのデータのみ保持されます』とあります
つまり A1セル以外のデータは削除されてしまいます
このアラートで OKを押してから
A10セル選択 =A1、B10を選択 =B1、C10を選択 =C1 と入力
結果は 『1』『0』『0』になると思います
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Visual Basic(VBA) VBAについて教えてください 4 2022/11/10 12:44
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:00
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定の色のついたセルを削除
-
VBAマクロ実行時エラーの修正に...
-
【Excel VBA】一番右端セルまで...
-
Excel UserForm の表示位置
-
Excel VBAで特定の範囲の空白セ...
-
VBAでユーザーフォームにセル値...
-
EXCEL VBA 文中の書式ごと複写...
-
関数の引数でrangeを指定したとき
-
Excelで空白セル直前のセルデー...
-
【VBA】【ユーザーフォーム_Lis...
-
Excel 範囲指定スクショについ...
-
VBA:日付を配列に入れ別セルに...
-
入力規則のリスト選択
-
DataGridViewのフォーカス遷移...
-
VBA 時間書式から文字列の抽出
-
VB6.0 ExcelオブジェクトのFind...
-
エクセルVBA 配列からセルに「...
-
エクセルVBA ダブルクリックし...
-
マクロ初心者です。 マクロで範...
-
データグリッドビューの結合セ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
Excelで空白セル直前のセルデー...
-
エクセルVBA 配列からセルに「...
-
特定の色のついたセルを削除
-
【Excel VBA】一番右端セルまで...
-
【VBA】【ユーザーフォーム_Lis...
-
EXCEL VBA 文中の書式ごと複写...
-
VBA:日付を配列に入れ別セルに...
-
C# DataGridViewで複数選択した...
-
Excel UserForm の表示位置
-
入力規則のリスト選択
-
Excel 範囲指定スクショについ...
-
エクセル、マクロで番号を読込...
-
DataGridViewでグリッド内に線...
-
Excel VBAで特定の範囲の空白セ...
-
CellEnterイベント仕様について
-
Excel VBAでCheckboxの名前を変...
-
【ExcelVBA】値を変更しながら...
-
データグリッドビューの結合セ...
-
下記のマクロの説明(意味)を...
おすすめ情報