2014-07-22 3 views
1

일부 데이터를 SharePoint 문서로 업데이트하려고하는데 로컬 환경에서이 문제를 해결하는 동안 문제가 발생하지 않습니다.VBA 코드를 사용하여 사용자 이름 및 암호를 전달하십시오.

그러나 가상 데스크톱에서 동일한 작업을 수행하려고 할 때 만들 수 없습니다. Windows 암호를 사용하여 사용자 이름 &의 암호를 입력합니다. 이 시나리오에서는 'SendKeys'를 사용하여 시도했지만 이해가되지 않습니다.

.... 
SendKeys "abc\ATX123",5 
SendKeys "Password1",5 
SendKeys "{ENTER}",5 
.... 

이 스 니펫은 ID가 & 인 Pwd를 입력하지 않고 'ENTER'를 전달하는 것입니다. 아무도 내게 가능한 해결책을 제안 할 수 있습니까?

+0

올바른 입력란을 타겟팅해야 할 수도 있습니다. 입력은 "글로벌"이라고 말하고 싶지만 나머지는 그렇지 않습니다 – Noldor130884

+0

몇 가지 샘플을 제공해 주시겠습니까? – zeal

답변

4

마지막으로,이 요구 사항을 간접적으로 달성 할 수있는 방법을 찾았지만, 이것이 결국 찾을 수있는 유일한 방법이었습니다. .

내가 한 것은 간단합니다. 단지 하나의 창 스크립트 파일 'Logon.vbs'를 만들어 팝업 화면을 처리하고 VBA에서 vbs를 호출했습니다.

Shell "WScript C:\Users\ABC\Desktop\Logon.vbs", vbNormalFocus 
: - :

Windows 스크립트 : Logon.vbs VBS 스크립트를 호출하는

'Creating an script object 
Set oWSH = WScript.CreateObject("WScript.Shell") 

'Activating alert screen  
oWSH.AppActivate ("Windows Security") 

'Passing the value UserName/UserID 
oWSH.SendKeys "USERNAME"  'ensure to complete the username with apropriate domain e.g., abc/A123456 

'Changing the focus to password textbox 
oWSH.SendKeys "{TAB}" 

'Passing the value password 
oWSH.SendKeys "PASSWORD" 

'Clicking enter to complete the screen 
oWSH.SendKeys "{ENTER}" 

'Releasing the script object 
Set oWSH = Nothing 

VBA 코드이 같은 뭔가를 찾고 있다면

, 아래의 샘플을 참조하십시오

+0

+1 잘 했어. 커뮤니티와의 공유에 감사드립니다. – Noldor130884

+0

+1 이제 자신의 답변을 수락하기 때문에,이 질문은 더 이상 답변되지 않은 것으로 나열되지 않습니다. – TheBlastOne

0

우선 당신은 SendKeys "yourString", Boolean을 원할 것입니다. 내가 알고 있듯이 SendKeys 명령은 True 또는 False을 두 번째 입력으로 원합니다. 또한 다른 필드에서 "탭 이동"을 시도 할 수 있습니다 : 첫 번째 기록 얻을되지 않은 경우

SendKeys "abc\ATX123", True 
SendKeys "{TAB}", True 
SendKeys "Password1", True 
SendKeys "{ENTER}", True 

, 어쩌면 초점이 정의 폼의 또 다른 구성 요소에 있습니다. "탭"을 사용하여 사용자 정의 폼이 나타나면 "사용자 이름"텍스트 상자가 아직 활성화되어 있는지 확인하십시오. 경우에 따라서는 포커스를 설정하려고 시도 할 수도 있습니다.

+0

Nope, 'True'도 포함시킨 후에도 작동하지 않습니다. ,,,, 그리고 SendKeys가 해당 값을 전달할 때 Username textbox 및 Password textbox에 포커스가 있다는 것을 확신했습니다. 실제로 로그온 화면이 아닙니다. UserForm 또는 다른 유형, 그것은 '과부 경고'사용자 이름 및 비밀번호 팝업 화면 .... 다른 어떤 단서는 제발? – zeal

+0

저는 UserForm (또는 Windows Alert)이 어떻게 든 객체라고 확신합니다. 폼을 찾을 때 오브젝트를 검색 할 때 코드를 디버깅 해 주시겠습니까? 찾을 수 있으면 "Username"과 "Password"필드에는 이름이 있으니 주소를 지정할 수 있습니다. – Noldor130884

관련 문제