No.3
- 回答日時:
エクセルVBAでは、Returnキーを押した後に動く方向を
MoveAfterRetun(プロパティ)で設定・取得できますが、Object.MoveAfterRetun
で記述します。このObjectはApplicationしか許されません。ApplicationとはエクセルVBAではエクセルそのものです。
WorkBookやWorkSheetは許されないので、エクセルに設定ーー>各ブックに影響が及ぶとなると思います。ある時点で考ると、各ブック単位に別設定はできないということになるでしょう。
そうですか・・・。(-ω-。`)
ありがとうございました!
マイクロソフトさんがどうにかしてくれない限り無理なんですね~・・・?
No.4
- 回答日時:
VBA を使っても良いと言うことであれば、
#3の言われるプロパティを
ThisWorkbook の Workbook_Open() (あるいは、Workbook_Activate()とか)で強制的に設定するようにしておけば良いような気がします。
この回答への補足
ありがとうございます!でもVBAって使った事が無いんです。
少し勉強してみます。
もしお時間がありましたら、やり方教えていただきたいんですが・・・。
No.5
- 回答日時:
#4のご回答が出ましたが、例えばBook1で作業する(Bookを開いた)とき、VBAで横方向と設定し、BOOK1を閉じる時は、標準(下方向)に変えておくとかすれば、あたかもそのブックごとに設定したかのごとく、自由に設定できます。
それと#3は別のことを言ってます。さらにSheet別に設定するなら
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Select Case Sh.Name
Case "Sheet1"
MsgBox "sheet1"
'Application.MoveAfterRetun = True
Application.MoveAfterReturnDirection = xlDown 'xlToRight
Case "Sheet2"
MsgBox "Sheet2"
Application.MoveAfterReturnDirection = xlToRight
End Select
End
End Sub
とすれば、Sheet1を開くと、下方向
Sheet2を開くと、右方向にできます。
ツールーマクローVBEで
通常左側に出るVBAProjectのThisWorkBookをクリックし、WorkBookのSheetActivate
イベントに貼り付ける。
No.6
- 回答日時:
#4>やり方教えていただきたいんですが・・・。
既に答えに近いと思ったので、具体的には書きませんでした。
#5で、シートの場合を書かれているのでBookの場合を具体的に書きます。
ALT+F11でVBEの画面にしてThisWorkbook をダブルクリックして以下のコードを貼り付けます。
そのまま保存するとエラーになりますので、
カーソルを
>Private Sub Workbook_Open()
に置いてツールバーから右向き三角ボタンを押してから保存するか
エラーになったら、そのまま終了して
別ブックを開いてからこのファイルを開くというようにしてください。
(プログラムを書き込んだすぐの時には、ファイルを開いた時の標準の状態の保存ができていないため)
*
実際に#4で答えた時には試していなかったので#3で言われているプロパティは、方向を設定するプロパティというより方向を設定するかどうかのプロパティだと気付いていませんでした。
適当なことを書いてすみませんでした。
----------------------------------------------------------------
'デフォルトの値を保存する変数
Public canAfterReturn As Boolean
Public dirAfterReturn As XlDirection
Private Sub Workbook_Activate()
'このワークブックがアクティブになった時
'リターンで右にカーソル移動するように設定する
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
End Sub
Private Sub Workbook_Deactivate()
'このワークブックがアクティブで無くなった時標準の状態に戻す。
Application.MoveAfterReturn = canAfterReturn
Application.MoveAfterReturnDirection = dirAfterReturn
End Sub
Private Sub Workbook_Open()
'デフォルトの状態を読み出して保存しておく
canAfterReturn = Application.MoveAfterReturn
dirAfterReturn = Application.MoveAfterReturnDirection
End Sub
とっても詳しくありがとうございます!
「標準の状態に戻す」というところの標準とは、エンターキーを押してもその場から動かないという設定でしょうか?
このVBAを設定したブックは右になりましたが、その他のブックは入力後の移動をしなくなりました。
・・・それでも理想に近づきました。(´・∀・)
少し勉強してみます。
No.7
- 回答日時:
#6>「標準の状態に戻す」というところの標準とは、エンターキーを押してもその場から動かないという設定でしょうか?
「このブックを開いたときに設定されていた状態に戻す」という意味です。
#6>このVBAを設定したブックは右になりましたが、その他のブックは入力後の移動をしなくなりました。
おそらく、#6で注意していたエラーになって、
ツール~オプション
編集タブ
□入力後にセルを移動する
のチェックがはずれた状態になっていると思います。
お手数ですが、標準の状態として設定し直してください。
これで直る(普通のブックは、標準の状態で開き、マクロを設定したブックは、右に移動になる。)と思います。
ありがとうございます!m(__)m 何度も申し訳ないです。
でもここの意味がちょっとわからなくて。↓
「カーソルを
>Private Sub Workbook_Open()
に置いてツールバーから右向き三角ボタンを押してから保存」
>Private Sub Workbook_Open()
というのが見当たらないのですが、
どのタイミングでどこに出てくるのでしょうか・・・?
それと、「標準の状態として設定し直して」
というのも「#6で注意していたエラー」を解決しないとダメみたいですね。
お時間があるときで結構ですのでよかったら教えてください。
No.8ベストアンサー
- 回答日時:
#7>ありがとうございます!m(__)m 何度も申し訳ないです。
いいえ、どういたしまして!
いつも思うことですが、実際のブックをやり取りできれば、話は簡単なんですが、言葉で説明するのって難しいですねぇ。
>>Private Sub Workbook_Open()
>というのが見当たらないのですが、
>どのタイミングでどこに出てくるのでしょうか・・・?
エクセルを立ち上げてALT+F11でVBEの画面になります。
(既に実行されているんだからここはイイと思いますけど一応念のため)
プロジェクトウインドウに
VBAProject
Microsoft Excel Objects
…
ThisWorkbook
というのが有るはずです。
このThisWorkbook をダブルクリックすると、
ブックのマクロを記述できるコードペインが開きます。
この状態で、上方にある左側のリストボックスに
(General) と表示されているハズですが、ココをクリックすると、リストが表示されて、その中にWorkbook があるはずです。
Workbook を選ぶと
自動的に、右側のリストボックスがOpen が選ばれて、
以下のコードが自動的に挿入されます。
Private Sub Workbook_Open()
End Sub
これは、ワークブックを開いた時に実行されるプロシジャーです。
ここに、ワークブックを開いた時に実行させたいマクロコードを記述します。
同様に、右側のリストボックスからActivate を選択すると
以下のコードが挿入されます。以降同じ。
Private Sub Workbook_Activate()
End Sub
#7>「標準の状態として設定し直して」
標準の状態というのは、なんでもいいので、新しいブックを開いて、
ツール~オプション
編集タブ
□入力後にセルを移動する
にチェックを付け、下に移動などと設定をして保存をします。
このオプションの設定は、全てのブックに共通なので、
(そもそも、それが、質問の題意)1つのブックで設定すれば、それ以降に開くブックにも適用されます。
それから、マクロを設定したブックを開くと、その標準の状態を変数として取っておいて変更し、ブックがアクティブでなくなる時(ブックを切り換えたり閉じた時、)取っておいた元の状態に戻します。
BLUEPIXYさん、大成功です!本当に詳しくありがとうございました!
初めてVBAというものを触った初心者なので感激です~!
実は#7にある「右向き三角のボタン=マクロの実行ボタン」を押さずに無理矢理閉じてました。
それでエラーになってたみたいです。
これで上司が使うファイルと自分が使うファイルの設定を分けられるし、BOOKごとに便利な形式に設定自由!って感じですごく嬉しいです!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ワードに「URL」を貼り付けると...
-
Windows 10の標準アプリ「アラ...
-
Word2000、オートコレクト、オ...
-
参照の設定について教えて下さい。
-
Wordでこのような三角が出てく...
-
エクセルで薄く透ける文字を入...
-
スケッチスタイルの有効化
-
印刷用紙の中央に点線をいれた...
-
差し込み印刷で反映されないフ...
-
WORD ある縦線が消せない
-
wordの2段組の文章の下に1段組...
-
Excelの集計がSUM関数で、1円...
-
ワードで定型レイアウトを崩さ...
-
例えはワードで「10の3乗」...
-
セルの書式設定のフォントやサ...
-
WORD中の赤色文字を、通常の黒...
-
XChange Viewerで文字サイズの変更
-
PowerPointのスライド番号をセ...
-
差込印刷で不要部を印刷しない
-
改行すると一段、間が開いてし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードに「URL」を貼り付けると...
-
ヘッダーとフッターがクリック...
-
APIを使う時は参照設定は不要?
-
【Wordの初期化についてお願い...
-
Excelのアドインと参照設定の違...
-
Windows 10の標準アプリ「アラ...
-
エクセルのカーソル位置表示色...
-
参照の設定について教えて下さい。
-
Word2000、オートコレクト、オ...
-
2.7 ?2.8?
-
画面が暗くならないようにした...
-
最新のJoyToKeyについて
-
エクセルで入力後のセルの移動...
-
ホームページYahoo!やgoo.ne.jp...
-
outlook設定方法
-
Wordで「バックスラッシュ」を...
-
Wordで行送りがmm単位にならない
-
ATOKをIMEに変えるのは...
-
パワーポイントのツールバー
-
Wiiペアレンタルコントロールの...
おすすめ情報