Моя проблема заключается в том, что я не знаю, какие функции (в C++) или методы (в Java) вызываются в VBA.Я пытаюсь преобразовать этот цикл в функцию
Они оба существуют, и поэтому я искал подводные лодки? Я думаю, что это параллель, но они ничего не возвращают из того, что я понимаю.
У меня нет формального обучения в VBA, поэтому я плохо себя чувствую. Я хочу создать функцию (или метод или суб), который делает то, что это цикл делает:
useInput = titles.Text
useRec = rec.Text
lastRow = 1
For Each rngCell In rngData.Columns(1).Cells 'Traverse each row in Spreadsheet
If useInput = rngCell.Value And LCase(useRec) = LCase(Cells(lastRow, 2)) Then 'If what the user input into the textbox matches a value in the spreadsheet
bothExist = True 'Set this to true, because both exist
otherUserForm.Show 'Call another userform created
titles = "" 'Set entries to null
rec = ""
Exit For 'Exit the for loop
End If
lastRow = lastRow + 1 'Counter
Next rngCell
Таким образом, все точки цикла, чтобы просто пройти таблицу и найти последнюю строку для ввода информации, однако найдите, если заголовки и rec уже существуют, то он делает то, что показано.
Мой вопрос: что мне нужно для создания, чтобы он возвращался, «lastRow?» Потому что мне нужно, что бы это ни было.
Когда я просматривал функции, казалось, что те, которые вы объявляете как функции, могут быть вызваны только в excel. Я хочу вызвать эту функцию внутри события? Итак, где я могу это поставить, «Функция?» Это внутри модуля? –
Да, вы помещаете его в модуль, а затем добавляете ссылку на этот модуль в своей книге. Кажется, вам нужно, чтобы Google запустил [учебник VBA] (http://www.wiseowl.co.uk/blog/s161/online-excel-vba-training.htm), чтобы вы начали. :-) Используйте вкладку «Разработчик» в ленте, нажмите кнопку «Visual Basic», «Вставить-> Модуль», затем «Вставить-> Процедура». Затем вы можете решить, является ли это частной или публичной, а также процедурой или функцией и назовите ее. VBA IDE создаст для вас заглушку. –