No.3
- 回答日時:
こんばんは!
>それと同時にF6にカーソルがジャンプする方法が知りたいです。
VBAでの処理になってしまいます。
画像の配置通りとします。
画面左下の操作したいシート見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り(VBE画面を閉じて)
B3セルをダブルクリックしてみてください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) '//この行から//
Dim c As Range, r As Range
If Target.Address = "$B$3" Then
Cancel = True
Set c = Range("C:C").Find(what:=Range("B1"), LookIn:=xlValues, lookat:=xlWhole)
Set r = Rows(3).Find(what:=Range("B2"), LookIn:=xlValues, lookat:=xlWhole)
Cells(c.Row, r.Column).Select
End If
End Sub '//この行まで//
※ ファイルを他のパソコンに送った場合、
他のパソコンのExcelの「セキュリティセンターの設定」に手を加える必要が出てくると思います。
ファイル → オプション → セキュリティセンター → セキュリティセンターの設定 → 「マクロの設定」で「すべてのマクロを有効にする」を選択し、OK m(_ _)m
No.4
- 回答日時:
No.3です。
あぁ~~~
行・列を非表示にしたい!というコトだったのですか。
再表示のコードも必要だと思いましたので、
B3セルをダブルクリックするたびに、非表示 → 再表示 → 非表示・・・となるようにしてみました。
前回のコードはすべて消去し↓のコードに変更してください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i As Long, j As Long
Dim c As Range, r As Range, myFlg As Boolean
If Target.Address = "$B$3" Then
Cancel = True
For i = 5 To Cells(Rows.Count, "C").End(xlUp).Row
If Rows(i).Hidden = True Then
myFlg = True
Exit For
End If
Next i
If myFlg = False Then
For j = 5 To Cells(3, Columns.Count).End(xlToLeft).Column
If Columns(j).Hidden = True Then
myFlg = True
Exit For
End If
Next j
End If
If myFlg = False Then
Set c = Range("C:C").Find(what:=Range("B1"), LookIn:=xlValues, lookat:=xlWhole)
Set r = Rows(3).Find(what:=Range("B2"), LookIn:=xlValues, lookat:=xlWhole)
If c.Row > 4 Then
Range(Cells(4, "C"), Cells(c.Row - 1, "C")).EntireRow.Hidden = True
End If
If r.Column > 4 Then
Range(Cells(3, "D"), Cells(3, r.Column - 1)).EntireColumn.Hidden = True
End If
Else
Rows.Hidden = False
Columns.Hidden = False
End If
End If
End Sub
※ 非表示の状態でB1・B2のデータを入れ替えB3をダブルクリックしても一度再表示されますので、
もう一度ダブルクリックしてください。m(_ _)m
No.5
- 回答日時:
No.3・4です。
>B3をエンターしても、画面は「左上」にならないです。
今まで投稿したコードはB3セルをダブルクリックするとマクロが実行されるシートモジュールです。
B3セルを選択後、Enterを押下しても何も変化しません。
質問文に
>B1に「う」、B2に「う」と入力すると、B3に高橋が表示されるようにしました。
とありますので、B3セルには何らかの数式が入っていると判断し、
再計算のたびにマクロが実行されても煩わしいばかりだと思いましたので、
B3セルをダブルクリックする方法にしていました。
画像を拝見するとちゃんとシートモジュールになっているようですので
B3セルをダブルクリックしてみてください。m(_ _)m
No.7
- 回答日時:
B3は、すでに式でできているんですよね?
ちなみに最初の質問に貼り付けていた表で作成した式が
B4=HYPERLINK("#"&ADDRESS(MATCH(B1,$C$1:$C$7,0),MATCH(B2,$A$3:$G$3,0),,1,),"クリック")
となります。関数でもいいというなら、他の方からもっといい式が出るかも知れませんが。
No.8
- 回答日時:
>表の目的のセルにジャンプしません
あぁ、まぁそれはそうでしょうね。表示しただけでジャンプならVBAです。
私の式はあくまでも、最初の質問に添付していた表を元に作成しています。こちらではうまくいってますので、実際の表と何かが違うのでしょうね。
ちなみに、数式バーで「ADDRESS ~ ,,1,)」までを選択した状態でF9を押すとセルアドレスが表示されると思いますが、そこに表示されるセルアドレスと行ってほしいアドレスは違っていますか?(ま、多分違うんでしょうが。)
式の意味はわかりますか?
>目的のセルが表の左上にもでてきません。
あー、ここ意味がわかってなかったのですが、画面が目的のセルが左上になるように移動してほしいということですね。
ここまで求めるならVBAの方がいいでしょうね。
No.9ベストアンサー
- 回答日時:
No.3・4・5です。
>このB3のセルをダブルクリックすると、B3にもともと入力されている関数が編集できるような状態となりますので・・・
ん?MAC版のExcelでは編集可能になりますか?
コード内に
>Cancel = True
と記載しているので、こちらのWindows版のExcelでは編集可能にはなりません。
もちろんB3セルを選択した状態では数式バー内で編集は可能ですが・・・
※ No.4のコードは試されたのでしょうか?m(_ _)m
TOM様 ありがとうございます。
できました!ファイルを開くたびにVBAを無効で開いていたのが原因だったかもしれせん。
いつもわかりにくい説明を汲んでくださり本当にありがとうございます!
この表はこれからC4:C500まで拡大するので、これで仕事が格段に早くなります。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelでの検索結果を含む行だけを表示させたい 5 2023/03/10 17:08
- Excel(エクセル) Excelで、別シートへ情報を参照表示する関数について。 2 2023/06/26 09:58
- Excel(エクセル) 【再度】Excelの関数について教えてください。 4 2023/07/28 13:06
- Excel(エクセル) エクセルで、2つのセルに検索値を入れて結果を一覧表示させる 1 2023/07/10 10:26
- Excel(エクセル) Excelの関数について教えてください。 5 2023/07/28 11:27
- X(旧Twitter) カギをかけているツイッターの検索について教えてください。 2 2022/11/07 17:22
- 格安スマホ・SIMフリースマホ GooglePixelで端末内のアプリを検索する方法を教えてください。 アプリ一覧に表示される検索ボ 2 2023/05/15 00:55
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
- Excel(エクセル) ExcelのVLOOKUP関数 7 2022/08/23 06:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでの作業計算方法について
-
Microsoft1Officeの互換ソフト...
-
【マクロ】その時、その時で変...
-
はがきについて。
-
【マクロ】読取専用のファイル...
-
エクセル初心者です 関数の入れ...
-
【関数】適切な文字数の数字を...
-
LOOKUP関数を使えばいいのでし...
-
【関数】先頭だけにある、半角...
-
Excel ピボットテーブルで日付...
-
Excelのpivotについて質問です
-
時間によってファイル名が変わ...
-
エクセル 白黒印刷で白線を印刷...
-
Aというブックの1というシート...
-
エクセル関数を教えてください
-
WPS OFFICEでの縦書きについて
-
Excelのチェックボックスの使い...
-
エクセルの条件付き書式につい...
-
エクセルのセルに同じ大きさの...
-
エクセルの関数について教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報
GooUserラック様
マクロは何もわからないんです。ちなみに、この表は会社の関係各部署とメールをやりとりし、各々のパソコンで編集し閲覧できる仕様を考えています。
自分の知識がないのですが、確かマクロは自分のパソコンで作成した場合、他のパソコンにデーターを送ったら、送られたパソコンで編集とかできなかったように思うのですが、いかがでしょうか?
もし他のパソコンにデーターを送って、そこでもマクロが使えるようでしたら教えていただきたいと思います。
よろしくお願いします
TOM様ありがとうございます。
自分の説明が悪かったのかもしれません。TOM様の方法で結果を得ることはできました。
そこでさらにご相談です。1枚目の写真で「て」「つ」の結果、「田中」となりました。自分がイメージしていたのは、2枚目の写真のように「結果」を左上に表示させることはできないでしょうか?
これが2枚目の写真です。
よろしくお願いします
TOM様
写真1のように、シートの見出表「薬剤配合禁忌」を右クリックし「コードの表示」がでました。
写真2では、この画面にコピーペーストしました。そのまま、×を押してエクセル画面に戻り、B3をエンターしても、画面は「左上」にならないです。写真2の入力する場所が違うのでしょうか?
自分はVBAの入力画面に出てくる、「モジュール」「クラスモジュール」を理解できていません。
ちなみに、今はMACを使用しています。どうかよろしくお願いします。
これが2枚目の写真です。よろしくお願いいたします
なるほど、B3をダブルクリックなのですね。今は、B1とB2の結果がB3に反映されるようにセルに=INDEX(D4:W37,MATCH(B1,C4:C28,0),MATCH(B2,D3:AB3,0))が入力されています。
このB3のセルをダブルクリックすると、B3にもともと入力されている関数が編集できるような状態となりますので、おそらくマクロが実行されていないということなのかもしれません。
この点についてh改善はできますでしょうか?
必ずしもVBAというこではないので、HYPERLINK関数でも実行ができるのでしたら参考にさせてください。
やりたいことは、B1、B2はリストから選択し、表の交差する部分がB3に表示されるようになっています。このB3の結果にセルがジャンプする方法を知りたいです。また、そのジャンプされたセルが表の左上に表示されることも求めています。
よろしくお願いします
現在のB3の数式はB1とB2に選択した結果が出ているだけで、表の目的のセルにジャンプしません。また、目的のセルが表の左上にもなりません。
B4=HYPERLINK("#"&ADDRESS(MATCH(B1,$C$1:$C$7,0),MATCH(B2,$A$3:$G$3,0),,1,),"クリック")やってみました。ですが、なぜか目的のセルにはジャンプしません。(全く違うところにジャンプしています)また、目的のセルが表の左上にもでてきません。