For Next構文の中でCountIfのセルの範囲指定を変数rを使って表示したいのですが、うまくいきません
以下の
Range("C5:I5")
の部分を
Range(cells(r,3),cells(r,9))
に変更したら動かなくなってしまいました
どの部分がいけないのか教えていただけますでしょうか
Sub 勤務の曜日入力()
Application.ScreenUpdating = False
Dim i As Long
Dim r As Long
With Sheets("シフト")
For r = 5 To .Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To .Cells(3, Columns.Count).End(xlToLeft).Column
If WorksheetFunction.CountIf(Sheets("データ").Range("C5:I5"), .Cells(4, i)) = 1 Then
.Cells(r, i) = "●"
Else
.Cells(r, i) = ""
End If
Next i
Next r
End With
End Sub
No.1ベストアンサー
- 回答日時:
こんばんは、
おそらく1004エラーでしょうか?
Sheets("シフト")が表示された状態で実行されており
セル指定のシートオブジェクトが明示されていない為と思われます。
cells(r,3)、、のシートオブジェクトはActiveSheetを指します。
シートをまたがった範囲指定は1004エラーになります。
結論を示すと
Sheets("データ").Range(Sheets("データ").Cells(r, 3), Sheets("データ").Cells(r, 9))とすれば回避できると思います。
少し気持ち悪いのですが、こんな書き方も出来ます
Sheets("データ").Range("C" & r & ":I" & r)
できました!
すごいですね!
1週間、色々と書きかえたり調べたりしていたのに短時間で回答くださりとっても助かりました
とっても嬉しいです!!
きょうは安心して休めます
本当にありがとうございました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) VBA 請求書自動作成 3 2022/04/24 01:58
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Visual Basic(VBA) ExcelVBAの転記について 1 2022/03/23 20:13
- Visual Basic(VBA) ExcelVBAでDo Until loopのネスト、IF文を使って一致する物と一致しない物としたい 11 2022/12/24 17:46
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Visual Basic(VBA) ExcelVBAで、index、match関数を使用して、指定範囲に出力したい 3 2022/10/18 21:53
- Visual Basic(VBA) A列B列C列 3 2023/04/26 18:11
- Excel(エクセル) マクロで最終行から上に検索を逆にしたい 1 2022/05/17 18:27
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
エクセル countif関数で、範囲を可変にするには
Excel(エクセル)
-
[VBA] CountIfに変数を使いたい
その他(プログラミング・Web制作)
-
VBAで変数に関数式の結果をセットする場合
Excel(エクセル)
-
-
4
VBAでセル入力の数式に変数を用いたい
Excel(エクセル)
-
5
Excelで、countif関数の範囲指定でシート名指定をするとき、セル参照にしたい
その他(Microsoft Office)
-
6
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
【Excel VBA】変数で指定したRangeでのセル範囲を可変する方法?
Visual Basic(VBA)
-
9
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
10
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
11
VBA 数式ではなく計算結果をセルに入れたい
Excel(エクセル)
-
12
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
13
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
14
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
15
エクセル VBA VLOOKUP
Excel(エクセル)
-
16
複数の文字列のいずれかが含まれていたらTRUEを返す関数について
Excel(エクセル)
-
17
条件付書式で「=#N/A」に色を付けたい
Excel(エクセル)
-
18
COUNTIFS関数 参照先の列を可変にしたい
Excel(エクセル)
-
19
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
グラフマクロで系列を変数にす...
-
100万件越えCSVから条件を満た...
-
EXCELのSheet番号って変更でき...
-
Excel VBA オートフィルターで...
-
Excel2013で切り取り禁止
-
Excelで横書き50行の漢字テス...
-
VBAを使って複数のシートから抽...
-
楽天RSSからエクセルVBAを使用...
-
VBA 空白行に転記する
-
エクセル 複数シートの同一セ...
-
マクロ実行後に別シートの残像...
-
アクセスからエクセルへ出力時...
-
テキストボックスから、複数の...
-
月毎に現金出納帳に転記するコ...
-
複数シートの複数列に入力され...
-
Count Ifのセルの範囲指定に変...
-
vba 連続するとうまく作動せず
-
VBA 別ブックからの転記の高速...
-
VB2005でExcelのグラフのデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
マクロ実行後に別シートの残像...
-
VBAコードについて
-
VBA 空白行に転記する
-
EXCELのSheet番号って変更でき...
-
VBA 別ブックからの転記の高速...
-
【VBA】特定の条件でセルをコピー
-
VBA別シートの最終行の次行へ転...
-
100万件越えCSVから条件を満た...
-
VBAで変数の数/変数名を動的に...
-
Changeイベントで複数セルへの...
-
楽天RSSからエクセルVBAを使用...
-
Count Ifのセルの範囲指定に変...
-
Unionでの他のシートの参照につ...
-
Excel2013で切り取り禁止
-
Excel VBA オートフィルターで...
-
VBA 実行時エラー1004 rangeメ...
-
複数シートの複数列に入力され...
-
VBA Userformで一部別シートに...
-
ExcelのVBマクロを、バックグラ...
おすすめ情報