エクセルのオートシェープで「グループ化ではなく、図形の結合」って出来ないですか?
(○と△を合体させて一つの金魚のような図形にすることです。)

VBAを使う方法でもそのようなことが出来ればありがたいのですが、そのサンプルプログラムを探しても見当たりませんでした。
方法知ってる方いましたら教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

「マクロの記録」でコードが採れました。


図形をコピーして「形式を選択して貼り付け」します。
「貼り付ける形式」を聞いてきますから、図の種類(PNGとかJPEG等)を選択して貼り付ければよいです。

Sub Macro1()
Selection.Copy
Range("C5").Select
ActiveSheet.PasteSpecial Format:="図 (PNG)", _
link:=False, DisplayAsIcon:=False
End Sub
    • good
    • 0

グループ化ではいけないのでしょうか。

グループ化した後でも、サイズや色の変更はできますよ。
    • good
    • 0
この回答へのお礼

ありがとうございました。やっぱり無理みたいですね。

お礼日時:2009/05/20 00:56

>図形の結合


概念があいまいです。質問者だけが、ある自分だけに都合の良い例をイメージしているだけです。
あらゆるケースを文章ででも表現してみてください。面倒ですよ。
まして図形の数が増えると、図形の種類が増えると収まりがつきません。論理的に文章化できないものはプログラムで組めません。
MS社がもしエクセルの機能として正式に採り上げるなら、厳密で有用、多用されるもので無いとなりません。
ーー
それより人間がデザインモード時に、直感的位置把握能力で配置したらおしまいでしょう。エクセルは操作で問題を解決するツールです。
VBAはあくまで周辺での応用です。
2図形ぐらいで同じパターンが続く場合などなら、位置関係をプログラムで決定できる場合が有るかもしれない。
図形はVBAで8点のハンドルの四角の左肩上位置(左辺と上辺位置)と幅と高さしか左右できません。
エクセルには例えば不等辺三角形の頂点の1つも捉まえる(座標として)考えか無いようです。
CADソフトなどならそういう考えは必須では無いかと思いますが。
あくまで図形の8点ハンドル内の図形であって、数学のように頂点から割り出したものではない。(線のオートシェイプの多角形はややそれに近いが)
15年前まではエクセルシートは図形を貼り付けることさえ出来なかった。あくまで数値の表の(除くグラフ)お飾り程度のものでしょう。
    • good
    • 0

その図形をコピーしてペイントに貼り付け、名前を付けて保存する。



あるいは、クリップの整理からクリップアートとして使用できるようになります。
下記ページで、「Microsoft Office アプリケーションで作成したオブジェクトを追加する」を参照してください。
クリップ オーガナイザにクリップ アートを追加する
http://office.microsoft.com/ja-jp/excel/HP051922 …

VBAの方法も検討してみます。
    • good
    • 0

どのようなことをされたいのかが分かりませんが


オートシェープを利用して好みの図形を作成し、Excelのシート上に
貼り付けたいのであればペイントブラシの様なお絵かきソフトを
使用されてはいかがでしょうか?

お絵かきソフトで作成した図形をExcelにコピー&ペーストして
Excelの「図」ツールバーの「透明な色に設定」で図形の周りの色を透明にしてあげれば良いのかなと。

全然見当違いでしたら気にしないでください。
    • good
    • 0

こんにちは。


>○と△を合体させて一つの金魚のような図形にすることです。
無理です。
Excelの仕様範囲を超えています。
お絵かきソフトではないのですから。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Qエクセルで○対△ (○:△)となるような計算式

例えば、売り上げ個数の予算がA=200、000個、B=600,000個だとしたとき、A:B=1:3となるように個数の下のセルに計算式を入れたいです。(AとBの個数が変わっても、Ratioが計算できるように入力したいです。)
今まで試したのでは、
=200,000/(200,000+600,000)とすると小数になり、うまくいきません。(この続きの計算上、整数でなければうまくいきません)
ずっと考えているのですが思い出せないし、これ以上のいい方法が浮かびません。

どうすればうまくいきますか?

Aベストアンサー

> 小数になり、うまくいきません。
それは当たり前です。分母の方がおおきいのですから。
その結果を100倍するとか1000倍すればいいのでは?
でも、#2さんのGCD関数を使う方法がスマートですね。
ただ、「A:B=1:3となるように」というのは言葉の綾で、
多分、A2に「1」、B2に「3」としたいのだろうと推察します。
もし、そうなら、#2さんの方法を応用させていただくなら、
A2に
=A1/GCD($A1,$B1)
B2に
=B1/GCD($A1,$B1)
ですね。
また、整数ということであれば「123456:789012」といった数値でもよいということでしょうか?

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Q平成○年○月○日午後○時○分 日と時間をわけたい

エクセルで「平成○年○月○日午後○時○分」という文字がはいったセルが1000行くらい
あるのですが、作業の過程で、「平成○年○月○日午後○時○分」を

      「平成○年○月○日」

      「午後○時○分」
を別のセルにわける必要がでてきました。単純にコピーをして、片方のセルは一気に時刻がはいってるところを消して、片方のセルは一気に日付がはいったところを削除したいのですが、どういった関数若しくはユーザ定義を行えばいいのでしょうか?

急ぎなので分る方がいれば教えて下さい。

Aベストアンサー

同じデータを表示書式を日付だけ、時刻だけにするので良ければ
A列に日付、時刻をが入っているとします。
1.A列の列名を右クリックから「コピー」
2.B列の列名を右クリックから「コピーしたセルの挿入」
  これでA列とB列は同じ内容が入っています
3.A列の列名を右クリックから「セルの書式設定」続いて表示形式タグで「日付」
  日付に関する表示パターンが西暦表示、和暦表示と各種用意されています
4.B列には時刻を表示するには、同様の要領で3.の選択が「時刻」

これでいかがでしょう
希望の表示パターンがないときはユーザー定義することもできます。
A列から時刻部分、B列から日付部分を除去するには一旦A列を削除
しますので、トラブルの原因になります。

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

QExcelでオートシェープで作った図形にセルを引用する数式を入れたい

Excel2003です
オートシェープで作った図形をクリックすると =$A$1 と数式バーに表示されA1に入力されている文字列が表示されるものを見たことがあります。
自分も
図形にA1セルに入力されている文字列を図形に表示したいのですがオートシェープで描いた図形に数式"=A1"と入力する方法を教えてください。

Aベストアンサー

質問にすでに答えがありますよ。

>オートシェープで作った図形をクリックすると =$A$1 と数式バーに
>表示されA1に入力されている文字列が表示される

図形をクリックして、数式バーに =$A$1 と入れると
A1に入力されている文字列が表示されます。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Qエクセル ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?

エクセル ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?

イメージで .jpgで図形をユーザーフォームに貼り付ける方法はわかるのですが、ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?

ご存知の方がいれば、その方法をお教えいただけないでしょうか。
よろしく、お願いいたします。

Aベストアンサー

オートシェープの図をjpgに変換してしまえばどうでしょう
まず
シート上にオートシェープを大きめに作図します
それを右クリックで「コピー」して
「ペイント」に貼り付けます
そして、「名前を付けて保存」でjpg形式で保存します

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Qオートシェープが表示されません

EXCEL2000を使っています。
オートシェープを使って作ったブックを、他の人のPC(EXCEL2003)で開いたとき、すべて表示されませんでした。
セルの中の文字は見えるのですが、オートシェープだけが全て見えませんでした。
対処方法をご存知の方、教えてください。
よろしくお願いします。

Aベストアンサー

「ツール」→「オプション」の「表示」タブで、
「オブジェクト」の項目で、
"すべて非表示"にチェックが付いていませんか?
もしそうなら、"すべて表示"にチェックを付け替えてみてください。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング