Page 1 of 1

อยากเก็บไฟล์ในที่เดียวกันจากคอมหลายเครื่อง (onedrive)

Posted: Thu Dec 22, 2022 11:40 pm
by tewjra
ตอนนี้ผมเขียนโค้ดเพื่อเก็บข้อมูลจาก excel เป็นรูปภาพซึ่งส่วนที่มีปัญหาคือตรงนี้ครับ

Code: Select all

    Dim str As String
    Dim rgExp As Range
    Set rgExp = Range("B3:H29")

    rgExp.CopyPicture Appearance:=xlScreen, Format:=xlPicture
 
    With ActiveSheet.ChartObjects.Add(Left:=rgExp.Left, Top:=rgExp.Top, _
    Width:=rgExp.Width, Height:=rgExp.Height)
    .Name = "ChartVolumeMetricsDevEXPORT"
    .Activate
    End With
    
   ActiveChart.Paste
   ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT").Chart.Export Filename:="C:\Users\username\OneDrive\picture\page\1\" & Range("AB9").Value & "_" & Range("AC9").Value & " _" & Range("AD9").Value & ".jpg"
   ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT").Delete
   
ตรงที่เป็นปลายทางไฟล์ตอนที่ทำกับเครื่องนี้เซฟภาพได้ปกติ แต่พอไปทำกับคอมเครื่องอื่นไม่สามารถเซฟได้น่าจะเพราะ username ไม่ตรง
เลยอยากทำให้ไฟล์ปลายทางเป็นออนไลน์เพื่อที่จะได้ไม่ต้องแก้โค้ดทุกครั้งที่เปลี่ยนเครื่อง

Re: อยากเก็บไฟล์ในที่เดียวกันจากคอมหลายเครื่อง (onedrive)

Posted: Fri Dec 23, 2022 5:20 am
by snasui
:D สามารถใช้ Statement vba.Environ("username") เข้าไปเชื่อมใน Path แทนคำว่า username เพื่อแสดงชือผู้ใช้เพื่อให้ Dynamic ตามแต่ละเครื่องที่ใช้งานได้ครับ

Re: อยากเก็บไฟล์ในที่เดียวกันจากคอมหลายเครื่อง (onedrive)

Posted: Fri Dec 23, 2022 1:00 pm
by tewjra
ขอบคุณมากครับอาจารย์