32비트 전용 Microsoft Common Controls(ListView)를 대체할 방법을 찾고 있습니다.
ListView 컨트롤을 사용하는 VBA/Excel에서 개발된 레거시 애플리케이션이 있습니다.안타깝게도 64비트 버전의 Excel에서는 이러한 컨트롤을 사용할 수 없습니다.
Office 2010의 기본 64비트 프로세스는 32비트 이진 파일을 로드할 수 없습니다.여기에는 MSComCtl [ListViews]와 같은 일반적인 컨트롤이 포함됩니다.코드를 64비트 Office 2010으로 마이그레이션할 때 이러한 컨트롤을 사용하는 기존 Microsoft Office VBA 솔루션에 대한 대안을 찾아야 합니다.
기존 애플리케이션을 Excel 2010/13 x64로 마이그레이션해야 합니다.그 과정은 그것들을 제외하고는 대부분 고통이 없습니다.ListView제어 장치
대체할 수 있는 주요 옵션은 무엇입니까?ListView(시간과 실행 관점에서) 제어와 가장 효과적인 방법은 무엇입니까?
주의:
여기에 Excel 사용자 양식의 스냅샷이 있습니다.맨 아래 부분은 목록 보기(숨긴 기밀 정보 있음)로, 정렬 가능한 열이 있어 사용자는 연속되지 않은 여러 줄을 선택할 수 있습니다.

이론적으로 가능한 한 가지 방법은 디스플레이 코드를 로 작성하는 것입니다.Net 어셈블리를 실행하고 VBA 코드에서 COM을 통해 액세스합니다(예: 사용 방법 참조).이를 위한 시작점으로 Excel VBA 내에서 NET 객체를 사용합니다.
그래야 글을 쓸 수 있습니다.컨트롤의 순 코드입니다.저도 그렇게 해본 적이 없고 당신의 문제에 얼마나 잘 적용되는지는 잘 모르겠지만, 선택 사항인 것 같습니다.
저는 방금 전화하기 위한 짧은 튜토리얼을 찾았습니다.Excel에서 네트.
저는 여기서 어떤 해결책도 모릅니다.그러나 JKP는 64비트 이하에서 잘 작동하는 TreeView를 대체하기 위해 Userforms와 함께 VBA에서 네이티브 TreeView를 개발했습니다.
노동 집약적이지만 ListView 컨트롤에 적용하는 것을 고려할 수 있습니다.
여전히 관심 있는 사람이 있다면 (4년 전) 저는 어떻게든 뭔가를 만들었습니다.수년간 COM 인터페이스를 만드는 프로세스가 바뀌었고 몇 가지 다른 방법/참조가 있었기 때문에 매우 고통스러운 프로세스였던 것으로 기억합니다.또한 COM의 작동 방식 때문에 이중 인터페이스를 사용해야 합니다.모든 속성/이벤트를 노출하지는 않았지만, 필요한 주요 속성/이벤트를 노출했습니다.코드는 VS2010과 함께 C#으로 작성되었습니다. 코드가 아직 컴파일되어 있는지 테스트하지 않았습니다. 어느 쪽이든 사용할 수 있어야 합니다.라이브러리를 등록하는 경우 Bin 폴더의 DLL입니다(Reg.bat 참조)."64비트 COM 인터페이스 v1.2 for."로 표시됩니다.[도구]->[참조] 아래에 "Net Common Controls"를 표시합니다.
컨트롤을 삭제하고 다시 등록해야 정상적으로 작동합니다.RegSvr32를 사용하여 컨트롤을 다시 등록합니다.
자세한 내용은 다음 링크를 참조하십시오. http://answers.microsoft.com/en-us/office/forum/office_2010-access/listview-issue-in-access-2010/d0b6f86a-1d9c-4d7f-8566-b80a10bb67c6
언급URL : https://stackoverflow.com/questions/16792410/looking-for-alternatives-to-32-bit-only-microsoft-common-controls-listview
'programing' 카테고리의 다른 글
| SELECT 문에서 "이전 행" 값에 액세스할 수 있는 방법이 있습니까? (0) | 2023.05.04 |
|---|---|
| 하위 모듈을 최신 커밋으로 업데이트 (0) | 2023.05.04 |
| 여러 비동기 작업을 실행하고 모든 작업이 완료될 때까지 대기 (0) | 2023.05.04 |
| 파일을 세는 bash 명령어가 있습니까? (0) | 2023.05.04 |
| 응답을 피하는 방법.종료() Excel 파일 다운로드 중 "스레드가 중단되었습니다." 예외 (0) | 2023.04.29 |