No.2ベストアンサー
- 回答日時:
あ、こうかな?
Sub Test1()
Dim r1 As Range, i As Integer, cnt As Integer
On Error Resume Next
Set r1 = Application.InputBox("文字数カウントセルは?", "Count", Type:=8)
cnt = Len(r1.Value)
Set r1 = Application.InputBox("先頭セルを1つ選択", "Select", Type:=8)
s = r1.Address
For i = 1 To cnt - 1
s = s & "," & r1.Offset(-1 * i, i).Address
Next i
Range(s).Select
End Sub
この回答へのお礼
お礼日時:2006/04/03 23:48
ご回答ありがとうございました。
大変参考になりました。
今回は斜め右上方向に進んでいきましたが、斜め左上や真上に進んで行く場合は、以下の部分はどう変わってくるでしょうか?
s = s & "," & r1.Offset(-1 * i, i).Address
No.3
- 回答日時:
どんな使い道があるのか、判らず、VBAのシートのイベントを使うものは不安定なもののように思いますが、一応それらしくできました。
標準モジュールに
Public n
Sheet1のイベントトプロシージュアーとして
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
n = Len(Target)
MsgBox n
End Sub
と
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo e1
Application.EnableEvents = False
s = ""
For i = 0 To n - 1
t = Target.Offset(-i, i).Address
s = s & t & ","
Next i
'MsgBox s
s = Left(s, Len(s) - 1)
Range(s).Select
e1:
Application.EnableEvents = True
End Sub
を貼り付ける。
文字数をカウントするセルをダブルクリックする。
(するとnに文字数を覚え増すが)、起点となるセルをクリックする。
すると、起点から右上方向のセルを数だけハイライトする。
もしエラーでイベントが反応しなくなったら
標準モジュールに下記を貼り付け、
Sub test01()
Application.EnableEvents = True
End Sub
を実行後、上記をやってみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- Excel(エクセル) countif関数について質問 4 2022/06/14 12:11
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Excel(エクセル) Excelに文字データのみを貼り付けたい 8 2023/05/03 15:38
- Excel(エクセル) エクセルでシート保護のかかり方の違いとセルの非保護の設定 3 2022/08/09 10:02
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Word(ワード) Wordの表中の文字を選択した時の白黒反転の違い 1 2023/04/25 12:13
- Excel(エクセル) Excelにて、セルに入力してある文字の中から文字と最後の数字のみ切り取り貼り付けるVBA 5 2022/12/27 08:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セルをクリック⇒そのセルに入力...
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
対象セル内(複数)が埋まった...
-
貼り付けで複数セルに貼り付けたい
-
エクセルで縦に1112223...
-
(Excel)数字記入セルの数値の後...
-
エクセル 足して割る
-
エクセル “13ヶ月”を“1年1ヶ月...
-
LARGE関数 飛び飛びの範囲を指定
-
excelの特定のセルの隣のセル指...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
【Excel】 セルの色での判断は...
-
Excelでのコメント表示位置
-
エクセルの一つのセルに複数の...
-
エクセルの関数VLOOKUP...
-
EXCELで、角度の「50.5度」を「...
-
複数セルに入力した数字をカン...
-
EXCELでフルパスから2つ目¥を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
貼り付けで複数セルに貼り付けたい
-
対象セル内(複数)が埋まった...
-
Excelで数式内の文字色を一部だ...
-
セルをクリック⇒そのセルに入力...
-
Excelでのコメント表示位置
-
エクセル 足して割る
-
excelのCOUNTIF関数で、『範囲=...
-
EXCEL VBA セルに既に入...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
(Excel)数字記入セルの数値の後...
-
エクセルの一つのセルに複数の...
-
【Excel】 セルの色での判断は...
-
Excel2003 の『コメント』の編...
-
エクセル “13ヶ月”を“1年1ヶ月...
-
複数のセルのいずれかに数字が...
-
枠に収まらない文字を非表示に...
-
excelの特定のセルの隣のセル指...
おすすめ情報