
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Function USER2()
Dim a As Double
Sheets("Лист1").Select
a = Cells(4, 1)
Sheets("Лист3").Select
Cells(4, 1).Value = a
'Dim i As Integer, j As Integer, icolumn As Integer, jrow As Integer
' icolumn = 13
' jrow = 24
'
' i = 1
' j = 1
' Do While i <= icolumn
'
' Do While j <= jrow
' a = Worksheets("Лист1").Cells(j, i).Value
' Worksheets("Лист3").Cells(j, i) = a
' j = j + 1
' Loop
' i = i + 1
' Loop
End Function
Тут и без видеозахвата, все циклы вывел в коммменты и завел один элемент цикла в начале функции, а он не пашет.
какая ошибка? как выглядит? прикрепи свой Экселевский файл, на худой конец.... к сообщению то есть
Да не пишет ошибку, просто при обработке ячейки с функцией пишет #ЗНАЧ. Файл прикрепляю.
Ну и зачем ты свои сообщения дулируешь? У меня то твой код работает!
Может ты перепутал местами строку и столбец?
В объекте Cells имеется две координаты. Первая - строка, вторая - столбец. Проверь ещё раз, чего ты сам ожидаешь от этого скрипта?
Ну и зачем ты свои сообщения дулируешь? У меня то твой код работает!
Может ты перепутал местами строку и столбец?
В объекте Cells имеется две координаты. Первая - строка, вторая - столбец. Проверь ещё раз, чего ты сам ожидаешь от этого скрипта?
Да это в принципе без разницы, все равно бы копировал только не те ячейки, а тут просто функцию не принимает.
какая ошибка? как выглядит? прикрепи свой Экселевский файл, на худой конец.... к сообщению то есть
Sub Макро4()
'Dim a As Double
'Sheets("Лист1").Select
'a = Cells(4, 2)
'Sheets("Лист3").Select
'Cells(4, 2).Value = a
Dim i As Integer, j As Integer, icolumn As Integer, jrow As Integer
icolumn = 13
jrow = 24
i = 1
j = 1
Do While i <= icolumn
j = 1
Do While j <= jrow
a = Worksheets("Лист1").Cells(j, i).Value
Worksheets("Лист3").Cells(j, i).Value = a
j = j + 1
Loop
i = i + 1
Loop
End Sub
Здесь все работает, значит ошибка в неправильном применение оператора: Function. А функция то намного удобнее чем процедура. Вот как процедуру в функцию переделать?? Функция то значение должна возвращать, но функцию можно хоть откуда вызвать.
Можно попробовать использовать событие "Worksheet_Change" в классе листа. Но чувствую сейчас повалят вопросы. поэтому прикрепляю пример. Измените значение в любой ячейке на листе "Лист1". Это вызовет событие "Worksheet_Change", в отором прописано обращение на вызов пользовательской процедуры "ggg123".
Можно попробовать использовать событие "Worksheet_Change" в классе листа. Но чувствую сейчас повалят вопросы. поэтому прикрепляю пример. Измените значение в любой ячейке на листе "Лист1". Это вызовет событие "Worksheet_Change", в отором прописано обращение на вызов пользовательской процедуры "ggg123".
Разобрался. Странно что в подробном руководстве по созданию формул в Exel нет описания применения процедур в других процедурах и это свойство Change очень удобно, и его также нигде найти не смог, и в справке по VBA ничего нет. А как принято таймеры делать в Exel, что удобнее там использовать помимо: взять текущее время переделать его в значение прибавить шаг таймера и сравнивать текущее время с контрольным. И еще ByVal Target As Range, причем здесь ByVal выделено синим, что это такое. По идееWorksheet_Change(ByVal Target As Range) есть функция, так как свойство идет через точку. Может по VBA в Excel есть хорошие книги по программированию.
Хочешь таймер? В Excel? Да пожалуйста (см. прикреплённый файл)! Я тебе многое ещё могу рассказать про VBA. На этом языке программирования я написал программу для расчёта железобетонных конструкций. Это было не просто.
Но мне надоело помогать тебе бесплатно. Учение - свет, а за свет надо платить. Пиши в личку!
Хочешь таймер? В Excel? Да пожалуйста (см. прикреплённый файл)! Я тебе многое ещё могу рассказать про VBA. На этом языке программирования я написал программу для расчёта железобетонных конструкций. Это было не просто.
Но мне надоело помогать тебе бесплатно. Учение - свет, а за свет надо платить. Пиши в личку!
Кстати, я тоже учился на СМ и ДПМ в ЮУрГу.