• ベストアンサー

エクセル 立体 奥行 まくろ

お世話になっております。 エクセルにて x、y、z 軸のあるグラフを作成したく色々調べたのですが難しそうです。 (交点を中心に大きな豆腐と小さなこんにゃくを比較するような図) シェイプなどを使って立方体をマクロで作成することは可能でしょうか。 エクセル画面上 縦 a 横 b の場所を起点に x、y、z の値で直方体が作れるような簡単なマクロってありますか。 ご教授願いまする。 (エクセル2010 マクロ初心者)

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

マクロの記録でほぼコードが得られます。 以下を参考に Sub Macro1() a = 100 b = 300 x = 50 y = 80 Z = 40 ActiveSheet.Shapes.AddShape(msoShapeRectangle, a, b, x, y).Select With Selection.ShapeRange.ThreeD .RotationX = -64 .RotationY = 18 .RotationZ = 0 .Depth = Z End With End Sub

mogurayama
質問者

お礼

有難うございます。 できました!! コード試したのですがzがいまいちダメでした。 助かります。 ただシェイプの大きさで軸がぶれるんですよね。 a・bは3軸の交点でないからなんですが ここはどうにもならないですよね。

その他の回答 (1)

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.2

直方体の挿入操作を「マクロの記録」でコードを採れば ActiveSheet.Shapes.AddShape(msoShapeCube, 108, 67.5, 108, 108).Select となります。 中心点を基準に2つ直方体を描けばいいのですか?

mogurayama
質問者

お礼

ご回答有難うございます。 >>中心点を基準に2つ直方体を描けばいいのですか? おっしゃる通りです。3次元のz=y=z=0の場所を中心に 正の方向へ複数の立体を作るイメージです。

関連するQ&A

  • pv3Dについて教えてください

    【環境】 FlashCS4 pv3D 2.0 アニメーションを作りたいと思い、数日前か勉強し始めました。 今まで全くプログラミングの勉強をしたことがないのと、サイト などに落ちているソースを見てもpv3Dのverが違うのかコンパイル エラーで思うように動いてくれません。 作りたいアニメは、 ・x,y,z軸 ・軸のプラス方向に矢印がついており、更にその先にx,y,zの文字 ・x,y,z軸それぞれプラスの値の適当な位置にy軸方向に長い  直方体を配置 ・直方体の側面にそれぞれ矢印が向いている ・軸、直方体を含め、マウスドラッグでy軸もしくは直方体を  中心に回転 という動きを実現したいのですが。。。 思い描いている動きとしては http://clockmaker.jp/blog/2009/05/papervision3d_tutorial_5/ にあるDemo (step3)が一番近いのですが、どうしても上手く いきません。 ※自分はフレームアクションではなく、asファイルで作成しています。 参考サイトやソースがわかる方いらっしゃいましたらぜひ教えて 下さい。よろしくお願いします。

  • エクセルでグラフを作成。45度線をX軸とY軸の交点から書きたい。

    エクセル2000でグラフを作成しています。45度線をX軸とY軸の交点から書きたい。どうしたらいいでしょうか?

  • Excelでのグラフの書き方について。

    Excelを用いてグラフを作成中に行き詰ってます。 グラフを書いた後に、y軸から任意の線(y=任意の実数)を引き、 その線とグラフとの交点からx軸上に垂直な線を引き、そのxの 値を求めることができるようなグラフを作りたいのですが、y軸 から任意の線を引くところで行き詰っています。 よろしければアドバイスください。

  • 立体の切断っぽい問題

    一辺1の立方体ABCD-EFGHがある。辺BFの中点をX,辺GHをGY:YH=1:2に分ける点をY,辺ADをAZ:ZD=2:3に分ける点をZとする。3点X,Y,Zを通る平面をPとし、平面Pと辺DHの交点をWとするとき、DWの長さを求めなさい。 切り口を延長して平行四辺形をつくって解いてみたら、簡単な一次方程式を解いて答えが6/13になったのですが合ってるでしょうか?それともそもそもこの問題自体がおかしいのでしょうか?

  • 慣性モーメントの問題

    密度が一定(ρ_0とする)の次の指定された軸の周りの慣性モーメントを計算せよ。 (1)一辺の長さaの立方体。立方体の一辺を軸にした場合の慣性モーメントおよび、立方体の中心を通り、相対する2面に垂直な軸に関する慣性モーメント。 (2)xyz空間でx^2+y^2≦z^2,0≦z≦hで定義される物体。z軸に関する慣性モーメント。 この問題で、(1)の前者=∫∫∫_D ρ_0(x^2+y^2)dxdydz,D=(0≦x≦a,0≦y≦a,0≦z≦a)として解いてあり、(1)の後者=8∫∫∫_D ρ_0(x^2+y^2)dxdydz,D=(0≦x≦a/2,0≦y≦a/2,0≦z≦a/2)として解いてあり、(2)=∫∫∫_V ρ_0(x^2+y^2)dxdydz,v=(x^2+y^2≦z^2,0≦z≦h)として解いてあったのですが。 ここで質問です。 (1)確かに慣性モーメントの公式はI=∫∫∫ρ(x、y、z)r^2(x,y,z)dxdydzなのですが、なぜ、(1)(2)ともにr^2のところがx^2+y^2なのでしょうか?zが入ってもおかしくないと思うのですが。r^2は軸からの距離ですし。これは、自分の都合よく平面で考えて良いということなのですか? (2)(1)の後者で8倍してありますが、何をもって8倍なのでしょうか? (3)そもそも慣性モーメントとはなんなのか? この3つの私の質問の答えを教えてください。よろしくお願いします。

  • 数Bベクトル、平面の方程式の…証明?

    x,y,z軸との交点がa,b,cである平面の式は x/a+y/b+z/c=1 である。 とあったので、これを自分で確かめてみようと思い、 次のように考えました。 x,y,z軸との交点がa,b,cである平面の式 →x,y軸との交点がa,bである直線の式と y,z軸との交点がb,cである直線の式と z,x軸との交点がc,aである直線の式とを 同時に満たす式? ここまでで考え方が間違っているのですか? このあと、次のように考えました。 それぞれ、式は順に x/a+y/b=1 y/b+z/c=1 z/c+x/a=1 ここで間違っているのでしょうか 全部を足すと 2(x/a+y/b+z/c)=3 ∴x/a+y/b+z/c=3/2≠1 どこで間違っているのでしょうか、 よろしく御願いしますorz

  • 数学概説を教えてください

    問1 3×3×3の立方体を27個の単位立方体に分割し、これから真ん中の単位立方体1個を取り除いた、体積が26の立体を考える。この立方体を13個の1×1×2の直方体で構成できるか。 問2 a×bのチェス盤を1×dのタイルで敷き詰めることができるための、必要十分条件はdがaかbを割り切ることであることを証明。 問3 a×b×cの直方体を1×1×dの直方体に分割できるための必要十分条件は、aかbかcのいずれかがdの倍数であることである。(この場合は、(x、y、z)の位置の単位立方体を色x+y(mod d)で着色して考えよ)

  • エクセル2007の質問です

    グラフを作成するとき、エクセルのシート上で異なるx軸の数値を合せてグラフを作成することができますでしょうか? 例えば グラフ1 x軸の数値0,2,4,6,8,10 y軸の数値2,4,6,8,10,12 グラフ2 x軸の数値0,1,3,5,7,9,10 y軸の数値2,5,7,9,11,13 という2つのグラフをエクセルシートに貼り付けて、グラフを作成すると、 x軸はグラフ(1)のx軸の数値になり、y軸はグラフ(1)のy軸グラフ2のx軸とy軸となってしまいます。 この二つのグラフを同じグラフにして比較したいのですが、どうすればいいでしょうか。 御教授御願します。

  • エクセル2010の数値軸の交点

    エクセル2003のグラフ機能では、メニューの目盛線の書式設定→X/項目軸目盛→Y/数値軸との交点でY軸の位置を変更できたのですが、エクセル2010では、その機能が見当たりません。 どなたかエクセル2010では、どの機能になるのかご存じないでしょうか? よろしくお願いいたします。

  • エクセルで表がうまく作れない

    よろしくお願いします。 エクセルで、Y軸がプラスとマイナスの部分がある表を作りたいのですが、X軸との交点が0の部分で交わり、X軸のメモリが、表の中に埋まってしまいます。下記のようなイメージ | | | | 0=============================================== | 1          5               10 | | これを | | | | ================================ | | | | ============================== 1   5               10 みたいな感じにしたいのですが、(X軸のメモリを表の外にだす) で決まるのでしょうか? 詳しい方教えてください。よろしくお願いします。

専門家に質問してみよう