반응형
사용자와 상관없이 Excel Workbook을 바탕 화면에 저장하는 방법은 무엇입니까?
Excel 워크북이 있는데, 양식 단추에서 워크북의 복사본을 사용자의 바탕 화면에 저장해야 함을 클릭합니다.
원래는 모든 것이 공유 네트워크 폴더에 있을 예정이었지만, 지금은 약 6명의 사용자가 있으므로 사용자가 버튼을 클릭하면 워크북을 개별 데스크톱에 저장해야 합니다.
개별 사용자를 지정할 필요 없이(6개의 워크북 파일을 유지 관리해야 하는) 컴퓨터 데스크톱에 저장할 수 있는 방법이 있습니까?
이것이 사용자 이름과 항상 같지 않은 데스크톱 경로를 얻는 가장 신뢰할 수 있는 방법이라고 생각합니다.
MsgBox CreateObject("WScript.Shell").specialfolders("Desktop")
당신은 그들이 각각의 컴퓨터를 가지고 있다고 언급했지만, 만약 그들이 동료 컴퓨터에 로그온해야 한다면, "C:"를 통해 파일을 저장합니다.\Users\Public\Desktop\"은 다른 사용자 이름에서 사용할 수 있도록 합니다.
Public Sub SaveToDesktop()
ThisWorkbook.SaveAs Filename:="C:\Users\Public\Desktop\" & ThisWorkbook.Name & "_copy", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled
End Sub
이것이 필요한지는 모르겠지만 도움이 될 수도 있습니다!
이것이 여전히 관련이 있는지 확실하지 않지만, 저는 이 방법을 사용합니다.
Public bEnableEvents As Boolean
Public bclickok As Boolean
Public booRestoreErrorChecking As Boolean 'put this at the top of the module
Private Declare Function apiGetComputerName Lib "kernel32" Alias _
"GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Function GetUserID() As String
' Returns the network login name
On Error Resume Next
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
GetUserID = Left$(strUserName, lngLen - 1)
Else
GetUserID = ""
End If
Exit Function
End Function
이 다음 비트는 PDF로 파일을 저장하지만 이에 맞게 변경할 수 있습니다.
Public Sub SaveToDesktop()
Dim LoginName As String
LoginName = UCase(GetUserID)
ChDir "C:\Users\" & LoginName & "\Desktop\"
Debug.Print LoginName
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\" & LoginName & "\Desktop\MyFileName.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
언급URL : https://stackoverflow.com/questions/17551238/how-to-save-excel-workbook-to-desktop-regardless-of-user
반응형
'programing' 카테고리의 다른 글
어디서든 패키지 이름을 가져오는 방법은 무엇입니까? (0) | 2023.07.10 |
---|---|
ASP.NET MVC 자동 캐싱 옵션을 비활성화하는 방법은 무엇입니까? (0) | 2023.07.05 |
.dmp 파일을 Oracle로 가져오려면 어떻게 해야 합니까? (0) | 2023.07.05 |
Microsoft를 사용하여 Excel 2010의 데이터 읽기사무실. 인터럽트.엑셀 (0) | 2023.07.05 |
Ruby 1.9.2가 LOAD_PATH에서 "."를 제거하는 이유는 무엇이며, 그 대안은 무엇입니까? (0) | 2023.07.05 |