퍼스널을 사용합니다.새 워크북에 xlsb 기능이 있습니까?
검색해 봤는데 퍼스널에서 함수를 호출하는 방법을 알고 있어요.xlsb는 VB 매크로에서 사용되는데 새로운 워크북에서 사용하는 함수를 어떻게 호출할 수 있습니까?
Module1'에 '의 기능은 다음과 .Personal.xlsb
:
Public Function GetColumnLetter(colNum As Integer) As String
Dim d As Integer
Dim m As Integer
Dim name As String
d = colNum
name = ""
Do While (d > 0)
m = (d - 1) Mod 26
name = Chr(65 + m) + name
d = Int((d - m) / 26)
Loop
GetColumnLetter= name
End Function
, 새새만만만만만만만만만만만만만만만만만만 that that that that that that that that that that that that that that 라고 될 것요.=getcolumnletter(1)
이 기능을 때 '되지 =...
제가 뭘 간과하고 있는 건가요?VBA 없이 다른 워크북에서 이 기능을 사용하려면 어떻게 해야 합니까?
조언해 주셔서 감사합니다!
아, 생각보다 쉬웠어요.매크로 앞에 워크북 이름을 사용하면 됩니다.
=Personal.xlsb![macroname]
저요.=Personal.xlsb!GetColumnLetter(2)
를 한다.B'로 하다.
앞에 파일 '이러다'를 수 .Personal.xlsb!
기능앞에 두 즉, '있다', '아니다', '아니다', '2'입니다.
1 션 11
함수를 호출하는 참조를 모든 워크북에 만듭니다.기능을 사용할 워크북을 열고 VBA Editor로 이동합니다.메뉴에서Tools --> References...
에서 VBA Personal.xlsb
파일명이 아닌 프로젝트명("VBA project")으로 표시됩니다.다른 워크북이 열려 있는 경우 기본명 "VBA project"를 가진 엔트리가 여러 개 있을 수 있으므로 먼저 이름을 변경해야 합니다.상세한 것에 대하여는, OP 후에 게재된 이 기사를 참조해 주세요.http://www.myonlinetraininghub.com/creating-a-reference-to-personal-xlsb-for-user-defined-functions-udfs
2 션 22
프리픽스 또는 참조 없이 항상 사용할 수 있는 진정한 범용 UDF를 원하는 경우 이를 애드인으로 설치할 수 있습니다.이를 수행하려면 UDF를 사용하여 파일을 저장합니다..xlam
은 분명히 다른 입니다)personal.xlsb
.) 같은 소스로부터의 개별 기사에 기재되어 있는 기타 상세 사항은 http://www.myonlinetraininghub.com/create-an-excel-add-in-for-user-defined-functions-udfs 를 참조해 주세요.
옵션 3(위의 @Egalth 답변 확장):
이 은 파일 '''가 를 붙이지 않도록 하는 해결책이라고 합니다.Personal.xlsb!
외부 온시트 콜에서
[ VBA Properties ]창에서 [Personal]를 설정합니다.xlsb ThisWorkbook의 "IsAddin" 속성을 True로 설정합니다.이제 입력하지 않아도 됩니다.Personal.xlsb!
외부 시트에서 기능을 사용할 때 접두사를 사용합니다.이 동작은 문서화되어 있지 않습니다.
https://learn.microsoft.com/en-us/office/vba/api/excel.workbook.isaddin
워크시트 기능에 대한 기존 온시트 콜에서는 마법처럼 접두사가 사라집니다.IsAddin을 True와 False로 전환해도 기존 온시트 콜은 중단되지 않습니다.
이점
- 파일을 애드인으로 저장할 필요가 없기 때문에 애드인과 원래의 퍼스널을 혼동하지 않습니다.xlsb 둘 다 동시에 열립니다.
- 당신은 그것을 참조할 필요가 없습니다.
주의사항
- 워크북이 열려 있는 동안 변경한 경우 워크북을 저장하라는 메시지가 표시되지 않습니다.따라서 변경 내용을 수동으로 저장해야 합니다.
- Excel을 다시 열면 IsAddin이 False 및 Personal로 리셋됩니다.xlsb의 워크시트가 표시됩니다.이 문제를 해결하려면 다음 절차를 수행합니다.
- ThisWorkbook 모듈에 다음 코드를 추가합니다.
Private Sub Workbook_Open()
ThisWorkbook.IsAddin = True
End Sub
IsAddin을 FALSE로 설정하면 Excel 프런트 엔드로 이동하여 Personal을 확인합니다.xlsb 시트(다른 워크북은 제외)를 클릭하여 [View ribbon]> [ Hide ]을 클릭합니다.Excel을 닫으면 "Save changes to Personal.xlsb?"라는 프롬프트에 동의합니까?이것으로, 통상의 Personal.xlsb 와 같이 동작합니다.
나중에 편집한 내용을 개인에 저장합니다.xlsb:
- 편집 세션에 있는 경우는, 퍼스널을 확인해 주세요.VBA 프로젝트 탐색기에서 xlsb를 선택하고 저장을 클릭합니다.
- Excel을 닫는 경우 위의 2단계를 수행합니다.
입력만 하면PERSONAL.XSLB!
함수 이름이 오류를 반환하기 전에.
다음과 같은 경우에만 이 기능이 작동합니다.
- 를 클릭합니다.
fx
아이콘 - 에서 기능을 선택합니다.
User Defined
카테고리 리스트
Win10 및 Excel 365 사용
언급URL : https://stackoverflow.com/questions/31815205/use-personal-xlsb-function-in-new-workbook
'programing' 카테고리의 다른 글
모든 앱 창의 WPF 아이콘 (0) | 2023.04.24 |
---|---|
커밋되지 않은 로컬 변경을 다른 Git 브랜치에 병합하려면 어떻게 해야 합니까? (0) | 2023.04.19 |
C#을 사용하여 마지막으로 채워진 Excel 행을 프로그래밍 방식으로 가져오는 중 (0) | 2023.04.19 |
C#의 해시테이블보다 딕셔너리가 우선되는 이유는 무엇입니까? (0) | 2023.04.19 |
NSString이 특정 문자로 시작되는지 확인하는 방법 (0) | 2023.04.19 |