- ベストアンサー
Excelですかし文字
Excelで出勤表を作成しています。 各セルに○×を入れているのですが、 そのうしろに日付をすかし文字のように入れたいのですが 無理でしょうか?? 一人1ヶ月に付き横1列の短冊形にして配布したいのですが、 一人一人の間に日付を入れるのも考えたものの、 すかし文字で日付を入れられたらスマートかなと思い 質問させていただきました。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
○×の入力が、後の計算式にまったく関係ないのでしたら、各セルに日付をいれ、文字の色を薄く設定し、○×はオートシェイプをはりつけることで対応できるかと。 でも○×の貼り付けが面倒なのでしたら、 別法として、表の離れたところ、(別のワークシートでも可)に同じ書式で日付を入力しておきます。 で、その部分をコピーしたあと、現在○×を入力しているセルをアクティブにし、Shiftボタンを押しながら「編集」を押すと開くたれふんどしに「図の貼り付け」や「図のリンク貼り付け」が表れますので、そのどちらかを選択すると、日付部分が画像として張り付きます。前もって日付部分の大きさや色を設定しておく必要がありますので、こちらも楽とはいえないんですけど。
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)日付けのセルの書式を書式-セル-フォント-色 -40%灰色等を使う。25%、50%なんてのもありますね。 (2)○(丸)ですがVBAで Private Sub Worksheet_SelectionChange(ByVal Target As Range) t = Target.Top l = Target.Left ActiveSheet.Shapes.AddShape(msoShapeOval, l + 20, t, 15, 15).Select End Sub の20(セル枠の左辺からの距離)や15(直径)やtを t+1にする(上辺から離す)とかして調節してください。 そしてセルをクリックするとそのセルに1つの円が現われます。オートシェイプの書式設定は色-塗りつぶしなし にしてください。 オートシェイプを全て消すには Sub test05() Sheet1.DrawingObjects.Delete End Sub を実行してください。 Xはやはりオートシェイプでクロス2本線をVBAで書きます。 ActiveSheet.Shapes.AddLine(a1, b1, c1, d1).Select ActiveSheet.Shapes.AddLine(a2,b2,c2,d2).Select などですが、a-dをどうするか考え中なので取りあえず判ったところまで。
お礼
早速のご回答ありがとうございます。 後者のほうがやりやすかったです。 ただ気になったのがコピーして貼り付けた画像が 元の画像よりもちょっと小さくなってしまうので、 拡大しないといけないところが面倒でした。 でもこうすればすかすことが出来るとわかり 非常に感謝しております。 どうもありがとうございました。