[[20041220114943]] 『マクロ始動後オートシェイプの変換』(SUS304) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロ始動後オートシェイプの変換』(SUS304)

 絶対掲題表現が、違うの分かっているんですが・・・語彙に欠けます。

 つまり、エンターキーの後、右or下 の変更をマクロで頂きツールバーに

 登録してあるのですが、シート上のオートシェイプに登録して、クリックすると

 図形が変わるような、コードをさがしています。例:→が↓に変わるなど

 よろしくご教示おねがいもうしあげます。            

                              以上

以下、現状のコード

Sub MARD()

 If Application.MoveAfterReturnDirection = xlToRight Then
    Application.MoveAfterReturnDirection = xlDown
 Else
    Application.MoveAfterReturnDirection = xlToRight
 End If
 End Sub

 考え方。
 
「Enterキーを押した後に動く方向を変えるマクロがあって便利だなー」
 ↓
「そうだ、画面に矢印を表示して今どっちの方向に動くのかが視覚的にわかると更に便利になるぞ」
 ↓
「じゃあまずは手始めに矢印を配置してみよう」
 ↓
「配置したは良いけど…これの方向を変えるにはどうするんだ?」
 ↓
「お、どうやら『オートシェイプの書式設定』のサイズに『回転角度』とかいうのがあるぞ!」
 ↓
「ここの値をいじったら…おぉ、矢印の向きが変わったぞ」
 ↓
「これをマクロでやるにはどうするんだろう…そうだ、『マクロの記録』をしてみよう!」
 ↓
「記録を開始して…回転角度を設定して…よし、これで記録終了だ。出来上がったマクロを見ると…」
 ↓
「よしよし出来てる。これでオートシェイプの回転角度をマクロで変更する方法がわかったぞ」
 ↓
「あとはこれを既存の動きに組み込めばカンペキだ!」
 
って事で、どうでしょう。
その結果、なにかしら疑問が生じたら再度その点について質問してみると
きっと誰かしら色々と回答してくれるんじゃないかな〜と。
(ご近所PG)

 案2
 図形を2個配置して、Visibleプロパティで表示・非表示を切り替える。
  (INA)


がってん。 How To 1・2  かましてみます。

サス


 動かないッス。なんだか読んでくれてません。

 シェイプを選んで、角度をチェック、クリックする図形とイコール・・・

 Sub オートシェイプ39_Click()
 If Application.MoveAfterReturnDirection = xlToRight Then
    Application.MoveAfterReturnDirection = xlDown
   ActiveSheet.Shapes("AutoShape 39").Select
   Selection.ShapeRange.IncrementRotation -270#

 Else

    Application.MoveAfterReturnDirection = xlToRight
    ActiveSheet.Shapes("AutoShape 39").Select
    Selection.ShapeRange.IncrementRotation -90#

 End If
 End Sub

                     なにが足りないんだろう?サス


 いや、動きました。がっつり動いております。

 縦横なんていれてみたんですが。そこで質問

 クリックしてマクロ始動後、シェイプがアクティブになります

 コレを回避する方法は、無いでしょうか?

 Sub オートシェイプ39_Click()
 If Application.MoveAfterReturnDirection = xlToRight Then
    Application.MoveAfterReturnDirection = xlDown
   ActiveSheet.Shapes("AutoShape 39").Select
   Selection.ShapeRange.IncrementRotation -270#
      Selection.Characters.Text = "縦"
 Else
    Application.MoveAfterReturnDirection = xlToRight
    ActiveSheet.Shapes("AutoShape 39").Select
    Selection.ShapeRange.IncrementRotation -90#
       Selection.Characters.Text = "横"
 End If
 End Sub
                                    サス

 どこか適当なセルを最後にSelectしてみてはいかがでしょう。
(みやほりん)


 activecell.activate  が良いと思います。
  (INA)


 非常〜にうまくいきました。サイズに併せて、変更をチェックしたら、クリックのたびに
 前に進む、イカす矢印ができました。笑
 質問発信の不備を考慮、反省ししばらく入室を控えます。
 みなさんお元気で。(といいながら、スグ来ると思いますが)  SUS304


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.