• ベストアンサー

エクセル たとえばA列の値が ○ と成った時 その行のB列のセルに斜め線を入れたいのです

  A    B   ○   /(書式の罫線の斜線です)   11          ○   /   12 といった具合にするには どの様なコードを書けばよいのでしょうか 初心者で説明不足の段はお許しください ご指南お願いいたします

質問者が選んだベストアンサー

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

下記のコードを Sheetのコードモジュールに書いてください。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target.Value = "○" Then With Cells(Target.Row, 2).Borders(xlDiagonalUp) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With End If End If End Sub

tompapa56
質問者

お礼

ありがとうございました 思い通りの事が出来ました

tompapa56
質問者

補足

ご指導ありがとうございます 早速 試してみましたが 何も起こりません ご指南をお願いします

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

条件付き書式というのがあって、書式設定で罫線も引けるが、2002レベルでは斜線が用意されて無いようだ。質問者の場合に、入ってないかチェックのこと。 入っておれば、「数式が」は、 =A1="○" を入れると良い。 ーー 関数では書式を左右できない。 B列にスラッシュなど入れられるが、斜線は無理で、スラッシュで我慢する(よい)としても、=IF(A1="","/",△)の△のところをどうするか問題がある。 ーーーー 条件付き書式がダメなので、ダメならVBAしかない。 Sheet1のChangeイベントに Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then Select Case Target Case "○" Target.Offset(0, 1).Select With Selection.Borders(xlDiagonalUp) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With '-- Case "" Target.Offset(0, 1).Select Selection.Borders(xlDiagonalUp).LineStyle = xlNone End Select End If End Sub しかしこれはイベントの考え方、Changeイベントの難しさ(抹消、複数範囲指定など)も含めて、VBAの中級以上の課題だと思う。VBAの経験の無い者には難しく、丸写ししかなかろう。 上記は複数セルの範囲指定でDELRTEには対応できてない。

全文を見る
すると、全ての回答が全文表示されます。
  • TK412687
  • ベストアンサー率44% (8/18)
回答No.2

B1に下記の関数を入れてください。 =IF(A1="○","/","") これは、A1が○であれば、/を入れ、○でなければ、空白になるようになっています。 これをB1に入れ、下方にコピーしていけば、列全体で使えます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル 最終行のセルの値をA1に表示したいのですが

    A B C 1 15 2 2 3 4 3 5 1 6 15 |下に続きます | | | どちら様か ご指南お願いします

  • エクセルでA列、B列を一行にしたいのですが・・・

    エクセルでA列、B列を一行にしたいのですが・・・ (既にデーターが入っています。) セルを結合して中央揃えにしてみますと 警告マークが出て上手くいきません。 ちなみにA列に店番、B列には、店名が入れてあります。どのように説明させていただいたらわかり易いか 思いつかず、説明不足ですみません。 素人ですので簡単に出来ればありがたいのですが、 どうぞ宜しく御願いします。

  • セルA1値によってセルB1の値が変わる

    お世話になります。 たとえばA1に「本」と入れた場合B1に「1000」(金額や商品コードなど)、A2に「バッグ」と入れた場合B2に「800」と出るようにするにはどうすればいいでしょうか。(できれば同じシートのA1とB1ではなく、Sheet1のA1に入力した値によって、Sheet2のB1が変わるというの目標です。) あらかじめ別のシート(商品の種類が1000を超えるためシートを分けたほうがいい?)にAに入力する商品名とBに入るべき数字の対応表を作ろうと思っています。 それを活用してできるでしょうか? 質問のようにしてできたエクセルシートを活用して、販売ソフトに取り込みたいと考えています。

  • Excelで指定する行と列に対応する値を表示させる方法

    このような事は可能なのでしょうか。下記のような別シートに表があり、メインシートのほうでAセル,Bセルに数字をいれてやると、別シートの対応する値を表示させることはできるのでしょうか。今回の場合ですと2の3ですから「く」を表示すという具合で。 できればまだまだ初心者なのでVBAではない方法がよいのですが、よろしくお願いします。説明不足で申し訳ないです。 ※(別シート)  Aセル Bセル Cセル Dセル Eセル    1   2    3    4   5  (1行目) 1  あ  い    う   え   お  (2行目) 2  か  き    く   け   こ  (3行目) 3   さ  し    す   せ   そ  (4行目) ※(メインシート) Aセル Bセル Cセル   2   3   く   

  • エクセルのセル内の位置

    すいません。初心者なので許してください。 エクセルを使って足し算をしました。 で、0を表示しないように、書式設定で「#,##0;"△ "#,##0;」を入力しました。 そうすると、その書式設定をしたセルの数字がセルの右側ぎりぎりに表示されます。 通常の右寄せより、さらに右側の位置に表示されます。 罫線に近すぎるので、通常の右寄せの位置、罫線からちょっと離れたところに表示させるには、どうしたらいいのでしょうか。 説明が下手ですいません。 わかる方がいたらおしえてください。

  • エクセルでA列セルが空白の時その行に罫線を引くには

    エクセルでA列セルが空白の時、その行の下側のみに2重罫線を引くマクロを教えて下さい。 色々試しましたがうまくいきません。例えば下記の様な表で3行目、7行目、12行目の各下側にのみ2重罫線を引くマクロです。行数と空白行は、日々取り込んでいるデータによって変わります。知恵をお貸し下さい。(A列空白セルのC列にはSUM関数を入れております。うまく表記が出来ませんので念のため)        A列   B列   C列 1行     123    酒    100 2行     123    酒    100 3行  ========================  4行     215   ビール   200 5行     215   ビール   200 6行     215   ビール   200 7行 =========================   8行     324    ワイン  300 9行     324    ワイン  300 10行     324    ワイン  300 11行     324    ワイン  300 12行 ========================                 

  • エクセルの使い方A1の値ををB1B2B3にコピー

    エクセルの初心者です。 どなたか、お教え下さい。 A1にはいっている文字列を、B1、B2、B3にコピーを A2は、B4、B5、B6というふうに、 それをA列に、はいっているだけ、 B列に3個分のコピーを作成したいのですが、 初心者ゆえに、どんな関数を使ったらいいのか全く思いつきません。 どなたか、助けてください。 よろしくお願いします。

  • 条件付き書式 A1,B1,C1の何れかのセルに「B」があったらA1,B1,C1セルを塗りつぶす。

    Excel2007です。 条件付き書式について教えてください。 画像をご覧ください A1,B1,C1の何れかのセルに「B」があったらA1,B1,C1セルすべてを塗りつぶしたいのですが 「次の数式を満たす場合に値に書式設定」に =OR(A1="B",B1="B",C1="B") と入力し、書式を塗りつぶしにすると 画像のように行1は、A1:B1、行2はA1、行4は、A1:A3と 「B」のある列までしか塗りつぶされません。 行4のように「B」のある行の3列をすべて塗りつぶすには どういう式を設定したらいいのか教えてください。

  • 行と列が重複しない値を取り出したい(エクセル)

    エクセル初心者です。 表の中で、  A   B  C (1)2  4  7 (2)6  5  1 (3)3  9  0 この中から小さい順に(1)(2)(3)とABCがそれぞれ重複しない((2),c)((1),A) ((3),B)を取り出したいのですが、どのようにすればよいのでしょうか? よろしくお願いします。

  • Excelでセルに斜線を引く場合

    Excelで結合したセルにセルの書式設定から罫線で斜線を引くと文字が中央に行ってしまいます。横は右揃えとか出来るのですが縦は出来ないのでしょうか? (文字を左上ぞろえにしたいんです。)

ラベルが長すぎる
このQ&Aのポイント
  • ラベルの長さを10cmから5cmに短縮したい
  • 本体設定のラベル設定の長さ調整では5cmにならない
  • ドキュメントプロパティのページサイズは43×29mmになっている
回答を見る