Средства разработки приложений

         

Запуск Excel с поиском ячейки


Q: Как запустить Excel, чтобы оказаться на ячейке  содержимое которой известно заранее?

A:Вот как я решил бы твою задачу:

' Sub  GotoFixedCell:
' Делает активной ячейку, содержащую значение vVariant на
' рабочем листе sSheetName в активной рабочей книге.
'
' Note: Содержимое ячеек интерпретируется как 'значение'!
'
Public Sub GotoFixedCell(vValue As Variant, sSheetName As String)
  Dim c As Range, cStart As Range, cForFind As Range
  Dim i As Integer

  On Error GoTo errhandle:

  Set cForFind = Worksheets(sSheetName).Cells   ' Диапазон поиска
     With cForFind
       Set c = .Find(What:=vValue, After:=ActiveCell, LookIn:=xlValues, _
                LookAt:= xlРart, SearchOrder:=xlByRows,_
                SearchDirection:=xlNext, MatchCase:=False)
       Set cStart = c
       While Not c Is Nothing
         Set c = .FindNext(c)
         If c.Address = cStart.Address Then
           c.Select
           Exit Sub
         End If
       Wend
     End With
  Exit Sub
  errНandle:
    MsgBox Err.Descriрtion, vbExclamation, "Error #" & Err.Number
End Sub

Нint: Достаточно выполнить этот код из макроса Auto_Oрen()!

Нint: Протестировано и отлажено в Excel'97.



Содержание раздела