• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelVBAでハンドカーソルを使う)

ExcelVBAでハンドカーソルを使う

このQ&Aのポイント
  • Excel VBAでハンドカーソルを使用する方法やその便利な機能について、簡単に説明します。
  • Excelにはハンドカーソル機能があり、コピペや切り貼りなどの操作が簡単に行えます。
  • ハンドカーソルを利用することで、製品データの移動や追加が簡単に行え、楽しく工程表を作成することができます。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

ハンドカーソルという言葉は余り使われないようにおもうが。 カーソルの形状が手の形をしたものならAPIなどで設定できるようだ。WEBに記事が見つかる。 VBやACCESSでは出来るようだ。 ーー http://www.seiji-tsubosaki.net/ExcelTech/ExcelVBASkillUpCollection/Contents_30.htm エクセルVBAにも一部 Sub test01() Application.Cursor = xlWait End Sub Sub test02() Application.Cursor = xlDefault End Sub のようなのは可能。 ーーー セルの範囲をクリックで定義選択するには「名前」の仕組みしかないと思う。 下記は思いつきのものだが(実際は質問のようなのはVBAで出来ないのではといいたいが) A1,C1,E1,,G1,I1のセルの値でセル範囲に名前をつける。 Sub test03() For j = 1 To 10 Step 2 Range(Cells(1, j), Cells(3, j + 1)).Name = Cells(1, j) Next j End Sub ーー Sheet1のシートモジュールで Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Row = 1 Then Application.EnableEvents = False Worksheets("Sheet1").Select x = "Sheet1!" & Target.Value Range(x).Select Application.EnableEvents = True End If End Sub ーー A1:I1に あ い う え お とセルにあるとする。(あといの間に1セルB1がある。それぞれ同じとする) これでA1をクリックするとA1:B3を範囲選択することが出来る。 C1(いのセル)をクリックすると、C1:D3を範囲選択する。 複数セル範囲を指定するとエラーになるので(選択が1セルかどうか)本当は手当てが必要。 ーー もしエラーなどで、イベントに反応しないようになったら、標準モジュールの Sub test04() Application.EnableEvents = True End Sub を実行。

souko3
質問者

お礼

なるほど、ExcelVBAは変更できるカーソルの種類はさびしいですね。 すごく面白いイベントだと思ったんですけど、ちょっと計画変更ですね、残念! 上記のコード、すごく面白いです。 こういうのが思いつくって言うのは発想力の違いですよねえ~ いままでSelectionChangeイベントは使ったことが無かったので、 パっと見てまだ理解できない部分も多いのですが、このコードを手本に 自分なりにアレンジすればなんとか半自動化までは出来るかなと。 一つずつ解析して理解します。 お手数おかけいたしました、ありがとう御座います。 これにて質問を締め切らせて頂きます。

関連するQ&A

専門家に質問してみよう