• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Hücre biçimini otomatik taşıma

Katılım
1 Aralık 2010
Mesajlar
6
Excel Vers. ve Dili
Excel 2007
Merhabalar, girer girmez soru soruyorum ama aradım bulamadım :)

Normalde =A1 gibi basit formülle A1 hücresinin değerini aktarabiliyoruz. Ama hangi başvuru ile aynı zamanda hücre biçimini aktaracağımı bulamadım. Yapmak istediğim bir rapor sayfasına verilerin girildiği sayfadan verilerin değerleri ile birlikte hücre rengini de taşımak. Bunun için koşullu biçimlendirmeyi kullanamıyorum, çünkü hücre içindeki veri ile renk kodu farklı anlamlar taşıyor. Bunu makro ile yapmak çok kolay, fakat devamlı makro çalıştırıp biçimi kopyalamak çok mantıklı değil. İşlem, biçimlendirme (bana sadece renk gerekli) değişir değişmez gerçekleşmeli.

Örnek A1'e 5 değeri yazıp burayı yeşil boyayınca Rapor sekmesine hem 5, hem de yeşil renk gelecek.

Excel 2007 kullanıyorum.

Teşekkürler
 
Selamlar,

Forumumuza hoşgeldiniz.

Maalesef istediğiniz işlemi makro dışında yapmanız mümkün değildir.

Eğer sorun bir hücre ise pratik olarak aşağıdaki işlemi yaparak çözüm üretebiliriz.

Verinizin A1 hücresinde olduğunu varsayarsak;

A1 hücresini kopylayın.
Kopylama aktifken başka bir hücreyi seçin.
Klavyeden CTRL+SHIFT tuşlarına basarak DÜZEN menüsünü mouse ile açın. (2007 versiyondaki yerini bilmiyorum.)
Menüden RESİM BAĞLANTISINI YAPIŞTIR seçeneğini seçip işlemi tamamlayın.

Artık A1 hücresinde ne değişiklik yaparsanız yapıştırdığınız alanda da aynı değişiklikleri göreceksiniz.

Tabiki bu yöntem seri kullanımlar için pratik değildir. Dediğim gibi bu gibi durumlar için makro ile çözüm aramalısınız.
 
Aslında biçimler, pek çok farklı sekmede bulunan farklı hücrelerden toplanan verilerin bir "rapor" sayfasında tek bir tabloda gösterilecek. Verilerin bulunduğu sayfada bir değişiklik olduğu anda rapor sayfasında da değişiklik olmalı.
Yardımınız için teşekkürler.
 
Selamlar,

"RAPOR" isimli sayfanızın aktif olması (tıkladığınızda) durumuna yazılacak bir kod ile sayfadaki formül başvuru hücreleri döngüye alınarak biçimleri aktarılabilir. Tabiki formüllü hücreler fazla ise işlem biraz uzun sürebilir.
 
Selamlar,

Bahsetmiş olduğum yöntemle ilgili küçük bir örnek dosya hazırladım. 1. sayfada değişik biçimler olan veriler formülle 2. sayfaya bağlanmıştır. Siz 2. sayfayı açıp bir hücreyi tıkladığınız anda biçimler otomatik olarak aktarılacaktır.

Sayfa2 de kullanılan kod;

Kod:
Option Explicit
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim Hücre As Range, FORMÜL As String, SAYFA As String, ADRES As String
    On Error GoTo Son
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    For Each Hücre In Cells.SpecialCells(xlCellTypeFormulas, 23)
        If InStr(1, Hücre.Formula, "!") > 0 Then
            FORMÜL = Hücre.Formula
            SAYFA = Replace(Mid(Hücre.Formula, 1, InStr(1, Hücre.Formula, "!") - 1), "=", "")
            ADRES = Replace(Mid(Hücre.Formula, InStr(1, Hücre.Formula, "!") + 1, 255), "=", "")
            Sheets(SAYFA).Range(ADRES).Copy Hücre
            Hücre.Formula = FORMÜL
        End If
    Next
Son:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
 

Ekli dosyalar

Evet, tam olarak istediğim buydu :)

Daha önce makrolar kullanıyordum, ama cahilliğimi maruz görün, kendi uygulamamda bu kodu yazacağım yeri bulamadım. Makro ekle ile denedim olmadı. Kodu nereye ekliyoruz?
 
Selamlar,

Kodu uygulamak istediğiniz sayfayı açın. Sayfa ismi üzerinde sağ klik yapın ve KOD GÖRÜNTÜLE seçeneğini seçin. Karşınıza beyaz renkli boş bir pencere gelecektir. Önerdğim kodu bu bölüme yazacaksınız.
 
Tamamdır buldum, nerelere saklamışlar, menüleri didik didik ettim süpriz yerden çıktı. Çok teşekkürler. :)
 
Takıldım

Merhaba. Kodunuzu kendi excel dosyama uygulamaya çalışırken biraz kafam karıştı.

For Each Hücre In Cells.SpecialCells(xlCellTypeFormulas, 23)

satırındaki

Cells.SpecialCells(xlCellTypeFormulas, 23)

ifadesini anlayamadım.

Benim dosyam ekte, Rapor sayfasına diğer sayfalardaki değerleri taşıdım, ama renkleri taşımam lazım.
 

Ekli dosyalar

Selamlar,

Aşağıdaki kodu denermisiniz.

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim Hücre As Range, FORMÜL As String, SAYFA As String, ADRES As String
    On Error GoTo Son
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    For Each Hücre In Cells.SpecialCells(xlCellTypeFormulas, 23)
        If InStr(1, Hücre.Formula, "!") > 0 Then
            FORMÜL = Hücre.Formula
            SAYFA = Replace(Replace(Mid(Hücre.Formula, 1, InStr(1, Hücre.Formula, "!") - 1), "=", ""), "'", "")
            ADRES = Replace(Mid(Hücre.Formula, InStr(1, Hücre.Formula, "!") + 1, 255), "=", "")
            Sheets(SAYFA).Range(ADRES).Copy Hücre
            Hücre.Formula = FORMÜL
        End If
    Next
Son:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
 
itiraf ediyorum beceremedim :( :( :( :(

tam bir haftadır uğraşıyorum takılıp kalıyorum makroyu yapıyorum olmuyor sorunum şu ekte bazı satırları koşullu biçimlendirdim ve bunları makro kullanarak diğer sayfalara taşımak sitedim ama nedense koşullandırdığım hüçreyi baz alıyor kopyalamayı hep o hüçrenin koşulunu ekliyor mesala okutulan bölümüne 1 yazınca diğer koşullandırmalarda yanıyor oysaki tek tek yapıyorum ama çook zamanımı alacak bana bu konuda yardımcı olurmusunuz ekte ornek dosyam var...
 

Ekli dosyalar

Teşekkürler.
Kod çok güzel çalıştı. Gerçi çok anlayamadım ama biraz kurcalayarak nasıl çalıştığını da bulurum.
Size de zahmet verdim.
 
Arkadaşlar Merhaba,
Bende hücre biçimlerini de(dolgu rengi) aynı sayfa içerisinde farklı bir hücreye taşımak istiyorum. Bunun için nasıl bir kod yazmam gerekiyor? Yardımcı olabilirseniz çok sevinirim.
Teşekkürler.
 
Geri
Üst