Страницы: 1
RSS
Номер строки выбранной ячейки
 
Вопрос меганубский, но я никак не могу найти способ вернуть номер строки. Мне нужно чтобы функция отработала как аналог встроенной функции Строка(). Подскажите пожалуйста, как это сделать.

Function Stroka()

Stroka = номер строки ячейки в которую возвращается значение

End Function
 
Код
Function Stroka(iCell As Range) As Long
    Stroka = iCell.Row
End Function

На листе использовать так =Stroka(K10)
Изменено: New - 26.09.2020 20:06:52
 
Не не )). Мне вот именно, что нужна функция без аргументов. То есть аналог функции Строка().
 
Код
lRw = Rows(Range("K10"))

;)
Цитата
Дмитрий Дмитрий
     Не           не
 
Код
Function Stroka() As Long
    Stroka = Selection.Row
End Function
 
Настя_Nastya,  :D  спасибо!  
 
Цитата
Настя_Nastya написал:
Stroka = Selection.Row
ой-ой...а что будет, когда выделена будет другая строка, а лист пересчитается?
Делается в таких случаях иначе: Кто вызвал функцию или процедуру?
Код
Function Stroka() As Long
    Stroka = Application.Caller.Row
End Function
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 

А так вроди проще:

Код
Function Stroka() As Long
    Stroka = ActiveCell.Row
End Function

Да, вроди проще(Stroka = ActiveCell.Row), но не правильно. У Димитрия правильно.

Изменено: DANIKOLA - 27.09.2020 11:14:39
 
Цитата
DANIKOLA написал:
А так вроди проще
ага. И смотрите мой ответ выше. Запишите функцию так(чтобы она пересчитывалась вместе с пересчетом листа):
Код
Function Stroka() As Long
    Application.Volatile True
    Stroka = ActiveCell.Row
End Function
Затем запишите =Stroka() в ячейку А1. Выделите ячейку А10, нажмите F9(чтобы пересчитать формулы на листе). Посмотрите какая строка будет в ячейке А1. А задача была такая:
Цитата
Дмитрий Дмитрий написал:
чтобы функция отработала как аналог встроенной функции Строка().
Stroka = номер строки ячейки в которую возвращается значение
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
ой-ой...а что будет, когда выделена будет другая строка, а лист пересчитается?Делается в таких случаях иначе:  Кто вызвал функцию или процедуру?
Спасибо большое! Application.Caller.Row и функция работает именно так как я хотел! 8)  
Страницы: 1
Наверх