Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2359 / 13644 ツリー ←次へ | 前へ→

【68473】検索した行の指定セルに値を入力したい ちゃぷ 11/3/9(水) 15:12 発言[未読]
【68475】Re:検索した行の指定セルに値を入力したい n 11/3/9(水) 16:41 発言[未読]
【68477】Re:検索した行の指定セルに値を入力したい UO3 11/3/9(水) 19:59 回答[未読]
【68496】Re:検索した行の指定セルに値を入力したい ちゃぷ 11/3/10(木) 19:37 お礼[未読]
【68497】Re:検索した行の指定セルに値を入力したい ちゃぷ 11/3/10(木) 20:53 質問[未読]
【68498】Re:検索した行の指定セルに値を入力したい n 11/3/10(木) 21:41 発言[未読]
【68503】Re:検索した行の指定セルに値を入力したい ちゃぷ 11/3/11(金) 10:44 お礼[未読]

【68473】検索した行の指定セルに値を入力したい
発言  ちゃぷ  - 11/3/9(水) 15:12 -

引用なし
パスワード
     A  B  C  D
1 10  

2 11

3 12

上記の様なリストについて、A列の任意の数字を検索し、検索された行
(上記の場合、行番号2)の指定セル(上記の場合、C2)に指定文字(例えば×等)
を入力したいのですが、どのようなVBAにすれば良いか教えて下さい。

【68475】Re:検索した行の指定セルに値を入力したい
発言  n  - 11/3/9(水) 16:41 -

引用なし
パスワード
   サンプルの一例としては
Sub test()
  Dim c As Range
  Dim firstAddress As String
  Dim x

  x = InputBox("?")
  With ActiveSheet
    Set c = .Columns("A").Find(What:=x, _
                  After:=.Cells(1), _
                  LookIn:=xlValues, _
                  LookAt:=xlWhole, _
                  SearchOrder:=xlByRows, _
                  SearchDirection:=xlNext, _
                  MatchCase:=False)
    If Not c Is Nothing Then
      firstAddress = c.Address
      Do
        .Cells(c.Row, "C").Value = "×"
        Set c = .Cells.FindNext(c)
        If c Is Nothing Then Exit Do
      Loop While c.Address <> firstAddress
      Set c = Nothing
    End If
  End With
End Sub
..こんな感じです。

【68477】Re:検索した行の指定セルに値を入力したい
回答  UO3  - 11/3/9(水) 19:59 -

引用なし
パスワード
   ▼ちゃぷ さん:

こんなコードでも。

Sub Sample2()
  Dim myNum As Variant
  Dim i As Long
  myNum = Application.InputBox(prompt:="検索数値をいれてください", Type:=1)
  If myNum = False Then Exit Sub
 
  With Sheets("Sheet1")  '<== 適宜変更
   i = .Range("A" & .Rows.Count).End(xlUp).Row
   With .Range("C1:C" & i)
     .Formula = "=IF(A1=" & myNum & ",""X"","""")"
     .Value = .Value
   End With
  End With
 
End Sub

【68496】Re:検索した行の指定セルに値を入力したい
お礼  ちゃぷ  - 11/3/10(木) 19:37 -

引用なし
パスワード
   nさん、UO3さん

早速、ご回答を頂き有難う御座いました。
助かりました。

【68497】Re:検索した行の指定セルに値を入力したい
質問  ちゃぷ  - 11/3/10(木) 20:53 -

引用なし
パスワード
   下記VBAでは、指定列内の指定値を検索し、そのセルに色をつけるように
していますが、同時に指定値が入力された行とDG列が交差するセルに×を
入力したいのですが、どのように修正したら良いか教えて下さい。


Private Sub 通常保管_Click()
Dim InPt As Long
Dim c As Object
Dim myKey As String, fAddress As String
InPt = Application.InputBox(prompt:="No.を入力して下さい。", Type:=1)
If InPt = False Then Exit Sub
ActiveSheet.Unprotect
myKey = InPt
With ActiveSheet.Range("$c$5:$c$3000")
Set c = .Find(What:=myKey, LookIn:=xlValues, lookat:=xlWhole, _
SearchOrder:=xlByColumns, MatchByte:=False)
If c Is Nothing Then
MsgBox "No." & InPt & "は登録されていません。"
Else
fAddress = c.Address
Do
c.Interior.ColorIndex = 34
Set c = .FindNext(c)
If c.Address = fAddress Then Exit Do
Loop
End If
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

【68498】Re:検索した行の指定セルに値を入力したい
発言  n  - 11/3/10(木) 21:41 -

引用なし
パスワード
   >.Cells(c.Row, "C").Value = "×"
サンプルは全く役に立ってないという事ですね?
ActiveSheet.Cells(c.Row, "DG").Value = "×"

【68503】Re:検索した行の指定セルに値を入力したい
お礼  ちゃぷ  - 11/3/11(金) 10:44 -

引用なし
パスワード
   nさんへ

出来ました!有難う御座いました。
また、別件で困っている事がありますので
新規投稿にてご相談をさせてください。

▼n さん:
>>.Cells(c.Row, "C").Value = "×"
>サンプルは全く役に立ってないという事ですね?
>ActiveSheet.Cells(c.Row, "DG").Value = "×"

2359 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free