電子書籍の厳選無料作品が豊富!

マクロ初心者です。

マクロが入ってるExcelファイルがあるのですが、
マクロボタンを押しても結果がでないので、たぶんマクロの検索範囲が1列しかなってないみたいなので広げたいのですが、どうしたらよいでしょうか?

Sub 検索準備()
'
' 検索準備 Macro
'

'
Sheets("データ表").Select
Range("A3:ES2002").Select
Selection.Sort Key1:=Range("A3"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal
Sheets("検索表").Select
Range("A4").Select
ActiveCell.FormulaR1C1 = "=+R[1]C"
Range("A4").Select
Selection.Copy
Range("B4:ES4").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("個人スキル").Select
Range("D3:E3").Select
End Sub
Sub スキル検索()
'
' スキル検索 Macro
'
'

'
Sheets("検索表").Select
Range("A4:ES4").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:ES4").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("計算表").Select
ActiveWindow.SmallScroll ToRight:=-3
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("F1:J149").Select
Application.CutCopyMode = False
Selection.Copy
Range("L1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll ToRight:=4
Range("L13:P149").Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range("L13"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal
Range("L23").Select
Sheets("個人スキル").Select
Range("D3:E3").Select
End Sub


検索準備ボタンと、スキル検索2種類ボタンがあります。
どこをいじくればよいのか分かりません。
検索表の検索範囲が表題を抜かして人の名前などが入ってる列が1列しかなってないので・・・

A 回答 (2件)

> 人の名前などが入ってる列が1列しかなってないので・


Sub[検索準備]の範囲であるようには思いますが
それがシート「何」の列「何」なのか、位は書いてね。

シートは4つですね。
1)データ表
2)検索表
3)個人スキル
4)計算表

どれを広げたいですか?
    • good
    • 0

残念な「アドバイス」になってしまいますが……。



まず、質問文のマクロの主な動作を整理すると下記のような感じになります。

●[検索準備]マクロがやっていること
 1.[データ表]シートのA3:ES2002を、A列をキーに並べ替える。
 2.[検索表]シートのA4:ES4に、直下のセルを参照する数式を入れる。

●[スキル検索]マクロがやっていること
 1.[検索表]シートのA4:ES4の数式の値を、値貼り付けで確定する。
 2.[検索表]シートのA4:ES4の値を、[計算表]シートのA1:ES1に貼り付ける。
 3.[計算表]シートのF1:J149の値を、L1:P149に貼り付ける。
 4.[計算表]シートのL13:P149を、L列をキーに並べ替える。

というわけで、どちらのマクロも【"検索"らしきことはしていません】
マクロは並べ替えをしたり、検索キー(?)や結果(?)を転記しているだけで、
実際に検索処理をしているのは、[計算表]シートに入力されている数式だと思われます。

問題があるとすれば、おそらくそれらの数式の方ですし、
動作を変更するにしても、マクロではなくまず数式の方を変更する必要があります。
少なくとも、数式が何をどうしているのかわからない状態でマクロの方だけ直すことはできません。

「検索範囲を広げる」というのが、
「検索キーの入力欄を広げてOR検索あるいはAND検索したい」のか、
「検索対象となる範囲を広げたい」のかわかりませんが、
小手先の修正ではなくゼロから作るぐらいの覚悟と技術が必要になりそうな気配です。

以上ご参考まで。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!