제 문제는 VBA에서 어떤 함수 (C++) 또는 Java (Java)를 호출했는지 모르는 사실입니다.이 for 루프를 함수로 변환하려고합니다.
둘 다 존재하므로 잠수정을 찾았습니까? 내가 평행하다고 생각하는 것은,하지만 그들은 내가 이해하는 것을 돌려주지 않는다.
저는 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)이 필요합니다. :-) 리본에서'Developer' 탭을 사용하고'Visual Basic' 버튼,'Insert-> Module' 메뉴,'Insert-> Procedure'를 차례로 클릭하십시오. 그런 다음 개인 또는 공개인지 프로 시저인지 함수인지를 결정하고 이름을 지정할 수 있습니다. VBA IDE에서 스텁을 만듭니다. –