アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になります。

OSは、Win10 エクセルは 2016 です。

K15は 1~12 の数値です。
A列も 1~12 の数値です。


※例えば、
A2~A7 =l
A8~A13 =2
A14~A18 =3
この場合 K15 =2 A8がA3の位置でアクティブセルになればいいのですが。
 
下記の構文をの実行しますと、
 「オブジェクトが必要です。」 という警告文が表記されます。

下記の構文をどのように修正すればいいかご指導戴けませんか。



Sub 月度セル()
Dim c As Range, s As String, rw As Long

s = Range("K1").Text & "*"
rw = 0

If s <> "*" Then
For Each c In Intersect(Columns(1), ActiveSheet.UsedRange)
If c.Value Like s Then
rw = c.Row
Exit For
End If
Next c
End If


If rw = 0 Then
Range("K1").Select
MsgBox "該当する値のセルがありません"
Else
Cells(rw, 1).Activate '列の指定
ActiveWindow.ScrollColumn = 1
ActiveWindow.ScrollRow = rw + (rw > 1)
End If
End Sub

質問者からの補足コメント

  • おはようございます。
    説明不足は失礼しました。

    何故か今朝に試しましたらこの構文で実行できました。

    念のために説明させていただきます。

    図の①
     A列に数値で 1~12 が入力されます。
     この図ではA19~は割愛していますが3000~4000行になります。
     例えばある月を見たい時カーソルで探し出すのを省力化したいからです。
    図②
     K1のリストで、
     例えば2を選択しコマンドボタンをクリックするこの表のようにするための構文です

    「vba で オブジェクト が必要です。と」の補足画像1
    No.1の回答に寄せられた補足コメントです。 補足日時:2019/11/09 06:39
  • どう思う?

    おはようございます。
    説明不足は失礼しました。

    何故か今朝に試しましたらこの構文で実行できました。

    念のために説明させていただきます。

    図の①
     A列に数値で 1~12 が入力されます。
     この図ではA19~は割愛していますが3000~4000行になります。
     例えばある月を見たい時カーソルで探し出すのを省力化したいからです。
    図②
     K1のリストで、
     例えば2を選択しコマンドボタンをクリックするこの表のようにするための構文です

    「vba で オブジェクト が必要です。と」の補足画像2
    No.2の回答に寄せられた補足コメントです。 補足日時:2019/11/09 06:47
  • 2つ追加します
    1
     図②は 表示 ウインドウ枠の固定 をしていませんでした
    2
     補足を付けたが見つからずされていないかと誤解し二重になりました

      補足日時:2019/11/09 07:24

A 回答 (2件)

マクロ・コードは特殊でさっぱり何かよくわからないですね。


せめてレイアウトがあって、こうなってほしいと示されていればよいのですが。
だから、あくまでも私の想像からです。

要するに、月の変わり目か何かで表示すればよいということかな?
A列は、1月とか2月の数字だけ。K列は任意

'//標準モジュール
Sub JumpTest1()
 Dim s As Variant
 Dim i As Variant
 Dim k As Long
'/ s = Range("K15").Value
 s = Cells(ActiveCell.Row, "K").Value '任意の行のK列の値
 On Error Resume Next
   '該当数字を探す 1月、2月となっていると過程する
 i = Application.Match(Val(s), Columns(1), 0)
   'ジャンプする場所を探す
 If i = 1 Then k = 0 Else k = -2
  '一行目は例外
 Application.Goto Cells(i, 1).Offset(k), True
 If Err.Number <> 0 Then
  MsgBox "該当する値「" & s & "」のセルが見つかりません。", vbCritical
 End If
 On Error GoTo 0
End Sub

'//ただし、後出しで条件が変わる場合は、検討の余地があれば、書き足しますが、そうでない時は、他の方におまかせすることになるかと思います。
「vba で オブジェクト が必要です。と」の回答画像2
この回答への補足あり
    • good
    • 0
この回答へのお礼

私のお願いしていたご指導の条件は変えていませんが私の提示した構文はうまく作動しなかったりで再度こちらに再質問させていただきます。

ご協力ありがとうございました。

お礼日時:2019/11/09 15:51

>「オブジェクトが必要です。

」 という警告文が表記されます。

は出ませんでしたが、

>この場合 K15 =2 A8がA3の位置でアクティブセルになればいいのですが。
>s = Range("K1").Text & "*"

セルK15とK1とどっち?
K15に直してもA2の位置になったけど。
この回答への補足あり
    • good
    • 0
この回答へのお礼

私の提示した構文はうまく作動しなかったりで再度こちらに再質問させていただきます。

ご協力ありがとうございました。

お礼日時:2019/11/09 15:53

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