- ベストアンサー
エクセルでクリップアート挿入
エクセル2000と2002を使用 クリップアートを挿入し、文字の背面に持っていくことはできないのでしょうか? (ワードのように)
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
この前似た質問がありました。 出来ますよ。 4番目に私が回答しています。 エクセルのカメラ機能と言います。 私はエクセル2000です。
その他の回答 (5)
- imogasi
- ベストアンサー率27% (4737/17069)
#4です。 クリップアートにセル文字を入れるように#4を改良。 指定セル範囲(下記では1列に限る)を指定して実行。 Sub Macro3() Dim cl As Range Dim sh As Object s = "" Set sh = ActiveSheet.Shapes.AddShape(msoShapeRectangle, 50, 100, 150, 130) sh.Fill.UserPicture "C:\Program Files\Common Files\Microsoft Shared\Clipart\cagcat50\BD06790_.WMF" For Each cl In Selection s = s & cl & Chr(10) Next sh.TextFrame.Characters.Text = s End Sub "C:\Program Files\Common Files\Microsoft Shared\Clipart\cagcat50\BD06790_.WMF" の部分はマクロの記録を取って、好きなクリップアート 画像を指定すれば、どういう名前かわかるので、どう変えれば良いかわかります。 msoShapeRectangle, 50, 100, 150, 130の4つの数字は 四角の位置と大きさを決めるのですが、画像がシートに出来てから後に、移動したり、伸縮できますので適当に。
お礼
s=""のことろでエラーがでます(ーー;) VBAの知識がないものですいません。
- imogasi
- ベストアンサー率27% (4737/17069)
クリップアートを半透明にしてセルの文字が、かすかに見える状態が、「やっと近い」であるようですね。 VBAで一ひねりしてみました。 例えばC3:C5に 京都 神戸 大阪 と文字が入っているとします。 (1)クリップアートの図形をC3:C5より一時的に別のところへずらしておき (2)C3:C6を範囲選択して (3)下記を実行します Sub test01() Dim cl As Range For Each cl In Selection ActiveSheet.TextBoxes.Add(cl.Left, cl.Top, cl.Width, cl.Height).Select Selection.Text = cl Next End Sub これでセル内容と同じ数字・文字で、大きさもセルと同じ大きさのテキストボックスがセルの場所に出来ます。上記では3個。 フォントのサイズ・色などもセルと同じに出来ますが省略。 (4)ここでクリップアートの図形をC3:C5をかぶる当たりに移動します。 (5)クリップアートは順序-背面に移動、を行います。 (6)テキストボックスの存在する部分は、クリップアート部分は欠けますがいかがでしょうか。 (注)VBAの実行は ツール-マクロ-VBE-挿入ー標準モジュール で出た画面に上記コードをコピーし貼りつける。 F5キーを押して実行。
お礼
参考になりましたm(__)m テキストボックスを塗りつぶしなしにして 後ろの文字を重なればいいのですがね...
- jindon
- ベストアンサー率43% (50/116)
ご希望に沿うかわかりませんが。 書式→シート→背景 でシートの下に図が入ります。 図を見せたくないセルを白で塗りつぶす。 サイズの調整が面倒ですけど。
お礼
シートの背景に持っていくことも考えてやってみたのですが、大きさがうまく調整ができなくて(ーー;)
- imaruya
- ベストアンサー率34% (63/181)
#!です。 スミマセン、Wordと勘違いして応えてしまいました。 Excelの場合、セルを前面に持って行くことは出来ないようですね。 この場合、図の上に別なオブジェクトを重ねることで代用するのかな?
- imaruya
- ベストアンサー率34% (63/181)
貼り付けたクリップアートを選択し、マウスの右ボタンを押します。図の書式設定を選択します。レイアウトタブをクリックし、背面を設定します。 私のPCの場合、一度前面に設定しないと、背面になりません。
お礼
ありがとうございます~ できましたm(__)m