Dosya yolu sorunu

Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Arkadaşlar merhaba;
Öncelikle forumda aratmama rağmen sorunumla ilgili bir açıklama bulamadım. Bu sebeple yeni konu açmak durumunda kaldım.
Sorum şu;
Makro her bilgisayarda çalışması için Environ metodunu kullanıyorum.
Workbooks.Open (Environ("USERPROFILE") & "\Google Drive\Falcon\Data\" & ActiveCell.Value)
Bu sefer formül için aynı metodu kullanmak istiyorm. Aşağıdaki formülü nasıl düzenlemem gerekir?
='C:\Users\Gokhan\Google Drive\Falcon\Data\[252.xlsm]10'!$O$60
 
Katılım
14 Nisan 2013
Mesajlar
764
Excel Vers. ve Dili
Office Excel 2016 TR
Home & Business
Altın Üyelik Bitiş Tarihi
30.12.2018
Arkadaşlar merhaba;
Öncelikle forumda aratmama rağmen sorunumla ilgili bir açıklama bulamadım. Bu sebeple yeni konu açmak durumunda kaldım.
Sorum şu;
Makro her bilgisayarda çalışması için Environ metodunu kullanıyorum.
Workbooks.Open (Environ("USERPROFILE") & "\Google Drive\Falcon\Data\" & ActiveCell.Value)
Bu sefer formül için aynı metodu kullanmak istiyorm. Aşağıdaki formülü nasıl düzenlemem gerekir?
='C:\Users\Gokhan\Google Drive\Falcon\Data\[252.xlsm]10'!$O$60
Merhaba,

C:\Makro şeklinde yapsanız bence daha uygun olur dosya adresini,

Her kullanıcı bilgisayarın adresi farklı olacaktır o yüzden ortak klasör kullanmalısınız
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
O şekilde yaptığımızda başvuru hatası veriyor.
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Arkadaşlar yol gösterebilecek olan var mı?
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Arkadaşlar yardımınızı rica ediyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,295
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodu kendinize göre uyarlamayı deneyiniz.

Kod:
Sub Makro1()
    ActiveCell.Formula = "='" & Environ("USERPROFILE") & "\Google Drive\Falcon\Data\" & "[252.xlsm]10'!$O$60"
End Sub
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Korhan Bey ilginiz için teşekkür ederim. Ancak formülleri kendim yazacağım ve bir kaç bilgisayarda kullanılması için dosyayı dağıtacağım. Dosya başka bilgisayarlarda çalıştığında formüllerin sorunsuz çalışması gerekiyor. Bunu makro ile yapabilir miyiz? Bu haliyle sorunumu çözmeyecektir.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,295
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Zaten bende makro kodu önerdim.

Dosya açılışında çalışacak bir kod ile formülleri revize edebilirsiniz.
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Korhan Bey;
5200 satırlı ve 12 sütündan oluşan bir tablo için kullanacağım ve formüldeki 252 isimli dosya her satırda değişerek devam ediyor. Ekte örnek bir dosya yükledim. Buna göre bir yol göstermenizi rica ederim.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,295
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ekte dosya yok!
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,295
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodu boş bir modüle ekleyin.

Dosyanızı kayıt edip kapatın. Sonra yeniden açın. Açılışta otomatik olarak formüller yol bilgisine göre revize olacaktır.

Yeni bağlantılar için dosyaları açmak gerekebilir.

Kod:
Sub Auto_Open()
    Dim Yol As String

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    Yol = Environ("USERPROFILE") & "\Google Drive\Falcon\Data\"

    Cells.Replace What:="C:\Users\Gokhan\Google Drive\Falcon\Data\", Replacement:=Yol, _
    LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

    Yol = Environ("USERPROFILE") & "\Google Drive\Falcon\"

    Cells.Replace What:="C:\Users\Gokhan\Google Drive\Falcon\", Replacement:=Yol, _
    LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

    ActiveWorkbook.RefreshAll

    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
End Sub
 
Katılım
22 Ekim 2012
Mesajlar
100
Excel Vers. ve Dili
2007 Türkçe
2016 Türkçe
Korhan Bey yardımlarınız için çok teşekkür ederim. Sonucu buradan paylaşacağım.
 
Üst