![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
EXCEL2007使用しています。
名簿シートと印刷シートがあります。
印刷シートのセルAJ33:AR37の結合セルに=IF(VLOOKUP($J$4,名簿!$A$2:$G$383,7)="","","印")
がはいっています。
このセルが空白ならば斜線を引きたいのですが、なかなかうまくできません。
過去の質問等も参考にしましたが、斜線は引けても、今度は消えません・・・。
ちなみに連続印刷をすでに作ってあるのですが、この連続印刷にも対応させることは可能でしょうか?
A1:C3の結合セルの名前は”番号”
印刷範囲の入力セルは”自”、”至”としてあります。
Sub 印刷開始()
Range("番号") = Range("自")
Do While Range("番号") <= Range("至")
Sheets("印刷").PrintOut
Range("番号") = Range("番号") + 1
Loop
End Sub
説明力がなくて申し訳ないのですが、どうぞよろしくお願い致します。
![「excel 空白セルに自動で斜線をひきた」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/1/523317201_5497bd5519daf/M.jpg)
No.2ベストアンサー
- 回答日時:
すでにNo1さんが回答されてはいますが、
J14セルの数式で、名簿に番号が無かった場合のエラー対策を一応入れています。
あと、(おそらく)印刷範囲外の行数分(10行)だけ、ご質問内容と画像の状態がずれています。
どちらに合わせて作成するか判断しかねますので、統一性を持たせてください。
>印刷シートのセルAJ33:AR37の結合セルに
画像ではAJ43:AR47と見受けられます。
>=IF(VLOOKUP($J$4,名簿!$A$2:$G$383,7)="","","印")
個の数式で参照している「$J$4」は画像では「$J$14」ですよね?
下記コードは画像の状態として作成しています。
「AJ33」に「"印"」や「""」が表示されるのであれば
『Set myRng = Range("AJ43")』を変更してください。
■注意
印刷開始マクロに斜線の切換コードを追加したコードが「VBAコード(1)」になります。
既存の印刷開始マクロと差し換えて利用してください。
ただし、
名前「番号」の範囲A1:C3の手入力時にも斜線を切り替えたい場合は
印刷するシート名を右クリック→コードの表示
最下の「VBAコード(2)」を貼り付けたうえで、
現在の印刷開始マクロはそのまま『変更せずに』利用してください。
■VBAコード(1)
Sub 印刷開始()
Dim myRng As Range
Set myRng = Range("AJ43")
Range("番号") = Range("自")
Do While Range("番号") <= Range("至")
If IsError(myRng.Value) Then Exit Sub
With myRng.Borders(xlDiagonalDown)
If myRng.Value = "" Then
.LineStyle = xlContinuous
Else
.LineStyle = xlNone
End If
End With
Sheets("印刷").PrintOut
Range("番号") = Range("番号") + 1
Loop
End Sub
■VBAコード(2)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myRng As Range
Set myRng = Range("AJ43")
If IsError(myRng.Value) Then Exit Sub
With myRng.Borders(xlDiagonalDown)
If myRng.Value = "" Then
.LineStyle = xlContinuous
Else
.LineStyle = xlNone
End If
End With
End Sub
お礼が遅くなってすいません。
そして、質問と画像の行数のズレ、ご指摘通りです…今後気をつけたいと思います。
ありがとうございます。
本題ですが、今回はコード(2)の方を使用させて頂きました。
名前「番号」の範囲A1:C3に手入力し、画面上で情報を確認することがありますので、非常に助かりました。
本当にありがとうございました
No.3
- 回答日時:
No2のものです。
申し訳ありません。
数式エラーの場合コードを終了していましたので
印刷が途中で停止してしまいます。
『VBAコード(1)』を修正致します。
■VBAコード(1)
Sub 印刷開始()
Dim myRng As Range
Set myRng = Range("AJ43")
Range("番号") = Range("自")
Do While Range("番号") <= Range("至")
With myRng.Borders(xlDiagonalDown)
If IsError(myRng.Value) Then
.LineStyle = xlContinuous
Else
If myRng.Value = "" Then
.LineStyle = xlContinuous
Else
.LineStyle = xlNone
End If
End If
End With
Sheets("印刷").PrintOut
Range("番号") = Range("番号") + 1
Loop
End Sub
No.1
- 回答日時:
こんにちは!
>このセルが空白ならば斜線を引きたいのですが、なかなかうまくできません。
詳しく検証していませんが・・・
Sub 印刷開始()
Range("番号") = Range("自")
Do While Range("番号") <= Range("至")
With Range("AJ33")
If .Value = "" Then
.Borders(xlDiagonalUp).LineStyle = xlContinuous
Else
.Borders(xlDiagonalUp).LineStyle = xlNone
End If
End With
Sheets("印刷").PrintOut
Range("番号") = Range("番号") + 1
Loop
End Sub
こんな感じをご希望なのでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Excel(エクセル) Excelでnullになるような式のセルをマクロで空白行と認識させるにはどうすればいいですか? 3 2023/03/13 13:42
- Excel(エクセル) Excel VBAで、行の高さを、上下1文字分程度高くしたい 3 2023/04/23 00:17
- Excel(エクセル) Excel VBAプルダウンの値を変えながら2枚ずつ印刷する方法? 4 2022/05/27 13:04
- Excel(エクセル) エクセルの印刷マクロについて質問があります。 現在、下記のマクロで印刷しています。Sheet1のD6 5 2023/06/12 10:59
- Visual Basic(VBA) 数式が消える 1 2023/03/19 16:55
- Excel(エクセル) セルによって印刷するシートを変える方法 EXCEL-VBA 2 2022/08/01 20:48
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) 【VBA】Excelで罫線を引きたい 3 2022/07/14 12:04
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
vlookupで返された値が空白だったら斜線をひく
会計ソフト・業務用ソフト
-
エクセルの質問です。条件によってセルに斜線を引きたいのですが。
その他(OS)
-
条件付き書式で自動で斜線の罫線を引く
Excel(エクセル)
-
-
4
Excelの関数について、特定の文字を入れると斜線や線を入れることは出来ますか?
Excel(エクセル)
-
5
Excel データ入力に応じて自動的に斜線を引きたいのですが
Excel(エクセル)
-
6
エクセル 結合セル内に空白なら斜線を引くマクロ
Excel(エクセル)
-
7
Excel VBA 条件に一致した言葉の下セルに斜線をひきたい
Visual Basic(VBA)
-
8
エクセルで空白に自動で文字を入れる
Excel(エクセル)
-
9
「B列が日曜の場合」C列に/(斜線)が入るようにならないものでしょうか?
Excel(エクセル)
-
10
空白セルにハイフンを表示
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのツールバーから数値...
-
祝日と土曜、日曜の合計をカウ...
-
【マクロ】2回実行したら、エ...
-
特定の文字列を含む、住所を抽...
-
EXCELの散布図で日付が1900年に...
-
マイクロソフトのPADを使ってい...
-
Excel分数の表示について
-
Excelで表を作ったところに文字...
-
マクロエクセルのブロック解除
-
文字2桁、3桁交じりの文字列...
-
絶対参照
-
Excelについての質問です。 B2...
-
在庫管理表に使うエクセルの関...
-
【マクロ】VLOOKUPにて参照元に...
-
【EXCEL】画像の黄色部分の抽出...
-
DATE関数で現在の年齢を出した...
-
ユーザー定義関数をアドイン登...
-
エクセルでの作業計算方法について
-
行数が不規則な一週間ごとの合...
-
Excelピボットテーブルの1行目
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報