Seçili alanın resmini duvar kağıdı (WallPaper) atama

Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Herkese merhabalar;

Şöyle bir ihtiyacım var:GÜNCEL SEANS isimli dosyam visible=False modunda her saat başı açılacak zaten açılışta kendisini otomatik olarak güncelleyen bir dosya bu..Geri planda kendisini güncellerken workbook_open daki makro ya da modüldeki "test" isili bir makro çalışacak ve ardından dosya kendisini kaydedip açık başka uygulamalar varsa etkilemeden kapanacak.

Bu şekilde çalışan bir dosya yapılabilir mi?

İlgilenecek olan herkese şimdiden çok teşekkür ederim..
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Örnek dosya ektedir.Makro çalıştığında a1:j30 aralığını jpeg olarak SEANS ismiyle kaydeder.

Bu seans isimli jpeg resim benim masaüstü arka planım.Dosya yukarda sözünü ettiğim şekilde çalışırsa ana dosyadaki verilerle kendisini güncelleyecek böylece SEANS isimli resmim yani masaüstündeki arkaplanım da güncellenecek ve ben sürekli takip etmem gereken sayfayı dosyayı açmadan 1 er saatlik aralarla takip etmiş olacağım..
 

Ekli dosyalar

Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Arkadaşlar bir timer ve zamanı geldiğinde kendi kendine açılmasına yönelik bir komut ve ilgili makroyu çalıştırdıktan sonra kapanmasına yönelik bir komut..(Hatta ilgili makro bu komutu içerebilir..)Mümkün olmayan birşey değil gibi geliyor bana..bir yardımcı olan çıkacak mı acaba?
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosya belli bir süre sonra kapanacak kapanmasınada belli süre sonra kendiliğinden nasıl açılacak.
Windows ilk başlarken başlangıça dosyayı kısayol vererek ilk açılışta çalıştırabilirsiniz.(açabilirsiniz.)Ama kapandıktan sonra nasıl açılacak.Siz belli periyotlarla açılmasımnıda istiyorsunuz.
Bunun için Windowsta arka planda çalışan sürekli açık kalan bir program olmalı.
Bu programda belli sürelerle exxcel dosyasını açıp kapayabilir.Veya kapanması için excel dosyasına bir timer konulur o kapanır veya arka plandaki dosyayı bir timer konulur o yapar.Buda windowsa hiç yoktan sırtına bir yük bindirmektir.Eğer mutlaka lazım değilse bence bu işe girmemek daha doğru olur.:cool:
Yani attığın taş ürküttüğün kurbağaya değmez.:D
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,389
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Merhaba,

Dosya visible=false modunda olduğuna göre sürekli açık kalmasının bir zararı var mı?

Dosyayı kapatıp açmaktansa, bir timer ile 1 saatlik peryotlarda Test proc. jpg kaydederek de istediğiniz olacaktır sanırım.
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Evren Hocam çok haklısınız açıkçası pc ye sürekli sizin bahsettiğiniz yükü vermeye değecek denli elzem bir durum değil.Ama sürekli yapılacak bir iş için düşündüğüm bir kestirme yol.Bazen kestirme yollar her açıdan mantıklı olmayabiliyor.

Zeki hocam sözünü ettiğiniz durum aklıma gelmemişti bence gayet mantıklı.Eğer ki başka excel dosyaları açıp kapattığımda etkilenmesin ve etkilemesin..Bunu sağlayabiliyorsak benim için çok güzel bir çözüm olur hocam.
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Evren hocam bu arada kurbağa dememeliydiniz bunu sizden beklemezdim;)
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Bu arada konu için yorduğum herkesten çok özür dilerim.Çünkü çok basit bir ayrıntıyı es geçişim.masaüstü arkaplan ayarındaki SEANS isimli resim değiştiği zaman masa üstündeki resim yenilenmiyor.sanırım benim için tatlı bir hayal olarak kalacak.

İlgilenen herkese teşekkür ederim.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,389
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Bu arada konu için yorduğum herkesten çok özür dilerim.Çünkü çok basit bir ayrıntıyı es geçişim.masaüstü arkaplan ayarındaki SEANS isimli resim değiştiği zaman masa üstündeki resim yenilenmiyor.sanırım benim için tatlı bir hayal olarak kalacak.

İlgilenen herkese teşekkür ederim.
Masaüstünde sağ klik > "Yenile" yapın.. ;)
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Hocam bebek var uzun uzun yazamıyorum ama olmuyor öyle hocam
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba,

Dosya visible=false modunda olduğuna göre sürekli açık kalmasının bir zararı var mı?

Dosyayı kapatıp açmaktansa, bir timer ile 1 saatlik peryotlarda Test proc. jpg kaydederek de istediğiniz olacaktır sanırım.
Hocam merhaba.
Bu durum benim aklıma geldi .Ancak başka bir dosya açıldığında visible otomatik true durumuna geçmeyecekmi.Geçerse oda görünür olacak o zaman.geçmezse başka bir problem var bu durumda açılan dosya görünmez olacaktır.
Bunun için bunu sayın peleryne teklif etmedim.
Saygılar.:)
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Benim de "diğer dosyaları etkilemeden ve kendisi de diğerlerinden etkilenmeden çalışabilir mi" diye ısrarla sormam bu endişeden kaynaklanıyor hocam.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,389
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Tekrar merhaba,

Konu hoşuma gittiği için az önce güzel bir çalışma hazırladım. Range aralığını wallpaper olarak kaydediyor.

Şimdi,
Yanlış anlmadıysam biri görünür diğeri gizli iki dosya var. Görünür dosyadan gizli dosyaya veri aktarılacak ve duvar kağıdı oluşturan prosedur çalışacak doğru mu?
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Hocam dediğiniz şekliyle de mümkün ama gerçekte dosyaların ikisi de görünür dosyalar.Ama iki ayrı kişi kullanıyor.Birincisinden (ayrı bir pc de) sekreter randevu kaydı yaparken ikinci dosya bağ yapıştır ile bunu takip ediyor.İşte bu ikinci dosyayı sürekli takip için açmaktansa randevuları arkaplan olarak masaüstünde görmenin yolu var mıdır diye düşünerek sorduğum bir soru?
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Ama hepsi bir yana jpeg kayıt yapan bir makronun da ötesinde bahsettiğiniz gibi duvar kağıdı oluşturan bir prosedür yazdıysanız ya da yazıyorsanız hocam ana sorunum zaten çözüldü demektir.Dosyanın kendi kendine çalışıp bunu yapması ve kapanması biraz da hoş olacak işin fantazisi..Ama bahsettiğiniz çalışma ana sorunun çözümü zaten..

merakla bekliyorum hocam..
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,389
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
:)

İlginç fikir, bu forumu çok seviyorum.

Üç alternatifiniz var: 2 ve 3 desktop resim ile ilgili

1 - "ExecuteExcel4Macro" veya ADO ile sekreterin PC deki dosyadan verileri çekebilirsiniz.(Dosyanın kaydedilmiş halini çekebilirisiniz)

2 - Sekreter PC deki dosya, düzenli aralıklarla resim üretir. Siz de bu resmi işletim sisteminizin "Masaüsütünü Özelleştir" den bağlarsınız. Masüstünde sağ klik "Yenile" dediğinizde resmin son halini masaüstünde görürsünüz. Kendi PC nizde ayrıca dosya kullanmanız gerekmez.

3 - Yine sekreter PC deki dosya resim üretir. Kendi PC nizdeki dosya sürekli açık kalacak ve düzenli aralıklarla sekreter PC nin ürettiği resmi kendi PC nizin "WallPaper" ı olarak atayacak.
Bu, sürekli bir döngü gerketireceği için sistem kaynağınızı kullanacak. WallPaper ve ActiveDesktop birbirinden farklı şeylerdir.


Bu durumda sizin tercihiniz ne olacak?
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Hocam çok hoş alternatifler..çözümsüz diye düşünürken şimdi de ımmm hangisini seçsem haline dönüverdi durum.Gerçekten ben de bu forumu çok seviyorum..

Yalnız şöyle birşey var..Sekreter pc deki dosya da sürekli açık bir dosya değil.Ayrıca işlemleri yapan dosyanın benim pc'mdeki bir dosya olmasını tercih ederim.Bu açıdan bakınca herhangi bir dosya olarak örnek dosya olarak yüklemiş olduğum dosyanın resim üretmesi benim için yeterlidir.
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Bir de masaüstünü özelleştir alanından resme nasıl bağlanılabilir bulamadım?
 
Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Pardon hocam resmin nasıl yüklendiğini buldu harika oldu üstelik haliyle "yenile" diyince yeniliyor da..devamı için sabırsızlanıyorum hocam..kolay gelsin
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,389
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Peki, sekreter resim üretecek dosyaya (module) şunu yapıştırın:

Kod:
[COLOR=DarkGreen]' "C:\sekreterPC\klasörü\" kısmını değiştirin.[/COLOR]
Sub test()
    Call Hucreden_Resime(Selection, "C:\sekreterPC\klasörü\")
End Sub

Private Sub Hucreden_Resime(hucre As Range, _
                    Hedef_Konum As String)
                    
Const JPG As String = "tmp.jpg"
Const BMP As String = "tmp.bmp"
                    
Dim graf As Chart
Dim pic  As IPictureDisp

    hucre.CopyPicture
    
    Set graf = ActiveSheet.ChartObjects.Add( _
    1, 1, hucre.Width, hucre.Height).Chart
   [COLOR=DarkGreen] 'JPG olarak çıkar...[/COLOR]
    With graf
        .Paste
        .Export Hedef_Konum & JPG
        .Parent.Delete
    End With
    
    [COLOR=DarkGreen]'JPG i BMP formatına çevir...
    'WallPaper için BMP zorunludur.[/COLOR]
    Set pic = LoadPicture(Hedef_Konum & JPG)
    SavePicture pic, Hedef_Konum & BMP
    
    [COLOR=DarkGreen]'BMP ye dönüştüğü için JPG ihtiyacımız kalmadı.
    'Bu prosedur tekrar çalıştığında hata oluşmaması için sil.[/COLOR]
    Kill Hedef_Konum & JPG
End Sub
Sırada sizin PC deki dosyanın modul yapısı:

"test" isimli proseduru bir Timer' a bağladığınızda düzenli aralıklarda WallPaper yapılacak.
Kod:
Private Declare Function DuvarKagidi Lib "user32" Alias _
                        "SystemParametersInfoA" ( _
                        ByVal A As Long, _
                        ByVal B As Long, _
                        ByVal C As Any, _
                        ByVal D As Long) As Long

Private Enum RESIM_STILI
    Dose = 0
    Ortala = 1
    Uzat = 2
End Enum

Sub test()
    Call Resimden_DuvarKagidina("\\sekreterPC\klasörü\", Ortala)
End Sub

Private Sub Resimden_DuvarKagidina(Kaynak_Konum As String, _
                    Optional Stil As RESIM_STILI = 1)
                    
Const OPERATION     As Long = 20 [COLOR=DarkGreen]'WallPaper[/COLOR]
Const UPDATEINIFILE As Long = 1   [COLOR=DarkGreen]'Ya da 0[/COLOR]
Const BMP           As String = "tmp.bmp"
    
    Set Wsh = CreateObject("WScript.Shell")
    
    Select Case Stil
        Case 0
            Wsh.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "0", "REG_SZ"
            Wsh.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "1", "REG_SZ"
        Case 1
            Wsh.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "0", "REG_SZ"
            Wsh.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "0", "REG_SZ"
        Case 2
            Wsh.RegWrite "HKCU\Control Panel\Desktop\WallpaperStyle", "2", "REG_SZ"
            Wsh.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", "0", "REG_SZ"
    End Select
    
    Call DuvarKagidi(OPERATION, 0, Kaynak_Konum & BMP, UPDATEINIFILE)
End Sub
 
Üst