• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel UserForm の表示位置)

Excel UserForm の表示位置

このQ&Aのポイント
  • Excel UserForm の表示位置をセルの右下に設定する方法を教えてください。
  • セル選択範囲に応じて、Excel UserForm を配置する方法を知りたいです。
  • Excel UserForm をセルの右下に表示する方法を教えてください。

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

  • ベストアンサー
  • MSZ006
  • ベストアンサー率38% (390/1011)
回答No.3

#1、#2です。 修正しました。これでたぶんどこのセル範囲でも大丈夫だと思います。 なお画面の右の方だったり下のほうだったりした時にユーザーフォームが切れるのは直していませんので悪しからず。 ---------------- Sub test() Dim x As Long Dim y As Long Dim str As String Dim rng As Range Dim adr As String str = Selection.Address If InStr(str, ":") = 0 Then adr = str Else adr = Mid(str, InStr(str, ":") + 1, Len(str) - InStr(str, ":")) End If Set rng = Range(adr).Offset(1, 1) x = ActiveWindow.PointsToScreenPixelsX(0) * 72 / 96 + rng.Left * ActiveWindow.Zoom / 100 y = ActiveWindow.PointsToScreenPixelsY(0) * 72 / 96 + rng.Top * ActiveWindow.Zoom / 100 Load UserForm1 With UserForm1 .StartUpPosition = 0 .Left = x .Top = y End With UserForm1.Show End Sub

mayu1992
質問者

お礼

昨日の今日で。。お忙しい中、完璧なご回答をありがとう御座いました♪ さらりと書いてあるコードですが、全く思いつく所が無く感服しております。 また別質問する際は宜しくお願い致します<(_ _)> ご覧頂いてご検討して頂いた方々もいらっしゃるかと思いますが ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • MSZ006
  • ベストアンサー率38% (390/1011)
回答No.2

#1です。 先ほどのコードで Set rngの行がちょっとまずかったです。選択範囲の右下セルの行番号もしくは列記号が2桁以上だと誤動作もしくはエラーになると思います。 修正版をまた投稿させていただきたいと思いますので、しばしお待ちを。

mayu1992
質問者

お礼

修正版をお待ち致します~♪ こんなに早くご回答頂けるとは思っていませんでしたので しばらくしば~らくお待ち申し上げます。 誠に恐縮ですが宜しくお願い致します^^

すると、全ての回答が全文表示されます。
  • MSZ006
  • ベストアンサー率38% (390/1011)
回答No.1

手抜きなところが多々ありますが、こんな感じでどうでしょうか。 セル範囲選択してマクロ実行するとフォームが選択範囲の右下に表示されます。 選択範囲が画面の右のほうだったり下のほうだったりするとユーザーフォームが見切れて表示されてしまいますのでご注意を。 --------------------- Sub test() Dim x As Long Dim y As Long Dim str As String Dim rng As Range str = Selection.Address Set rng = Range(Right(str, 4)).Offset(1, 1) x = ActiveWindow.PointsToScreenPixelsX(0) * 72 / 96 + rng.Left * ActiveWindow.Zoom / 100 y = ActiveWindow.PointsToScreenPixelsY(0) * 72 / 96 + rng.Top * ActiveWindow.Zoom / 100 Load UserForm1 With UserForm1 .StartUpPosition = 0 .Left = x .Top = y End With UserForm1.Show End Sub -------------- 私もいろいろ調べながら書いてみましたので、細かいところのフォローはできかねますのでご容赦ください。

mayu1992
質問者

お礼

早速のご教授ありがとう御座います♪ しかも貴重なお時間を割いてお調べ頂いて感謝です<(_ _)> 更に、ご回答後に検証までして頂き感激です。 x=・・・ y=・・・ の部分は、こんなこと出来るんだと。。。

すると、全ての回答が全文表示されます。

関連するQ&A