H

Çözüldü Hücre Birleştirme Makroları

  • Konuyu başlatan Konuyu başlatan hakki83
  • Başlangıç tarihi Başlangıç tarihi

hakki83

Site Üyesi
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba sağlıklı günler dilerim

Şeritteki isimleri tam olarak yazdığım gibi geçen, iki farklı makro kodlarını ayrı ayrı alabilir miyim?

Birleştir ve Ortala

Hücreleri Birleştir


Teşekkürler
 
Merhabalar Sn. hakki83
Seçili alanda Birleştir ve Ortala işlemi için aşağıdaki kodları kullanabilirsiniz.

--Satırların açıklamalarını kod içinde mevcuttur.
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(5 satır)

Hücreleri Birleştir için ise bu satırı kullanabilirsiniz.
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
 
Merhabalar Sn. hakki83
Seçili alanda Birleştir ve Ortala işlemi için aşağıdaki kodları kullanabilirsiniz.

--Satırların açıklamalarını kod içinde mevcuttur.
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(5 satır)

Hücreleri Birleştir için ise bu satırı kullanabilirsiniz.
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
Sayın Ahmet Rasim yöneticim
öncelikle güzel cevabınız için çok teşekkür ederim.

İki adet sorum var,
sorularımı arz ediyorum.

1. sorum:
Şeritteki orjinal Birleştir ve Ortala düğmesini tıkladığımızda, hücreleri birleştirip ortalııyor ve aynı düğmeye tekrar bastığımızda, önceki haline (birleşmemiş haline) geri dönüyor. (Çözüyor)

Birleştir ve Ortala kodunuza bu özelliği de ekleyebilir miyiz?
(Sanıyorum Selection.UnMerge oluyor)

(Ayrıca sizin kodunuzda, ayrı ayrı, hem yatay hem de dikey ortalama satırları var, çok beğendiğimi de belirtmek isterim)
...

2. sorum da şöyle:
Şeritte orjinal Hücreleri Birleştir düğmesini tıkladığımızda, hücreleri birleştiriyor, ama aynı düğmeye tekrar bastığımızda herhangi bir etkisi yok. Bunun farkındayım.

Fakat yine de eğer yapılabiliyorsa, Selection.UnMerge satırını, bu ikinci kodunuza da dahil edebilir misiniz?

Teşekkürler
 
Merhabalar Sn. hakki83
Kodları bir buton ile kullanıyorsanız, ekteki örnek dosyada;
-- Buton başlığı Birleştir ve Ortala ise seçtiğiniz alanı birleştirir.
-- Buton başlığı Hücreleri Çöz ise seçtiğiniz birleştirilmiş alandaki hücreleri çözer.
Sayın Ahmet Rasim ilginiz için önce teşekkür ederim

Eklediğiniz dosyayı kendime uyarlamak istedim, yapamadım.


2 nolu mesajda vermiş olduğunuz kodlar tam istediğim gibiydi.

Eğer mümkünü varsa bu 2 nolu mesajınızdaki kodların altına ayrı ayrı olacak şekilde “çözen” satır veya satırları ilave eder misiniz?


3 nolu mesajımda şu gözlemimi dile getirmiştim
“Birleştir ve Ortala düğmesine ikinci kez basmada çözme işini yapıyor,
Hücreleri Birleştir düğmesine ikinci basmada ise, yapmıyor.

Bunu farketmiştim.

Eğer oluyorsa iki kodun altına da çözme satırını ilave etmenizi rica ederim.

Bu kodları, kısayol tayin edip, eklenti haline getirip kullanıyorum.

Saygılar
 
Merhaba. Sayın @AhmetRasim şu an çevrimiçi değil.
Kendisi mesajınızla ilgili geri dönüş yapacaktır.

Ben, farklı bir alternatif vereyim dedim.
Malum olduğu üzere; normal koşullarda, birleştirilecek hücrelerden sadece DOLU OLAN en üst ve soldaki hücre değeri kalır,
diğer hücrelerdeki değerler ise geri gelmeyecek şekilde silinir (Elle bu işlemi yaparak durumu görebilirsiniz) .
Çözme işlemi normal koşullarda, birleştirme işleminin GERİ ALınması değil, sadece hücre birleştirmesinin İPTAL edilmesidir.

Ancak aşağıdaki kodu işlem yapılacak sayfanın kod bölümüne olduğu gibi uygularsanız;
birleştirme işlemi uygulanan son alandaki değerler hafızada tutulur ve başka birleştirme işlemi yapılmadan aynı alan
çözülürse, birleştirme öncesi değerler geri getirilir.
YEŞİL kısım birleştirme, KIRMIZI kısım çözme kısmıdır.
MAVİ kısım ise birleştirme öncesi değerlerin geri getirilmesini sağlar.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(17 satır)
.
 
Sayın Ömer Baran teşekkür ederim cevabınız için

Lütfen
Sayın Ahmet Rasim’in, iki adet kodlarının altına
çözen satırını (emin değilim ama Selection.UnMerge sanırım)
ayrı ayrı ilave eder misiniz?

Zira eklenti olarak kullanacağım ve kısayol atayacağım için, private sub command düğmesini yapamıyorum.


Sayın Ahmet Rasim’in iki adet kodu tam istediğim gibiydi

Sadece çözen satır ilave edilecek ve eklenti haline getirip kullanacağım.


Sayın Rasim’in kodları

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(5 satır)

Hücreleri Birleştir için ise bu satırı kullanabilirsiniz.
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)

Sayın Ahmet Rasim’in 2 nolu mesajındaki kodlardır.

Arz ederim
 
Ben, son örnek belgede bir CommandButton kullanıldığı için öyle cevap yazmıştım.
Sayfayı yenileyerek önceki cevabıma tekrar bakınız, önceki cevapta verdiğim kodu güncelledim.

Kodun, çözme işlemini GERİAL gibi yapmasıyla ilgili bölümü gerekli değilse,
kodda yer alan mavi kısımları silebilirsiniz.

Sayın @AhmetRasim gerekli düzenlemeyi kendisi yapacaktır.

.
 
Ben, son örnek belgede bir CommandButton kullanıldığı için öyle cevap yazmıştım.
Sayfayı yenileyerek önceki cevabıma tekrar bakınız, önceki cevapta verdiğim kodu güncelledim.

Kodun, çözme işlemini GERİAL gibi yapmasıyla ilgili bölümü gerekli değilse,
kodda yer alan mavi kısımları silebilirsiniz.

Sayın @AhmetRasim gerekli düzenlemeyi kendisi yapacaktır.

.
Hemen bakıyorum
takıldığım bir yer olursa arz edeceğim :)
 
Ben, son örnek belgede bir CommandButton kullanıldığı için öyle cevap yazmıştım.
Sayfayı yenileyerek önceki cevabıma tekrar bakınız, önceki cevapta verdiğim kodu güncelledim.

Kodun, çözme işlemini GERİAL gibi yapmasıyla ilgili bölümü gerekli değilse,
kodda yer alan mavi kısımları silebilirsiniz.

Sayın @AhmetRasim gerekli düzenlemeyi kendisi yapacaktır.

.
Sayın Baran, her zamanki gibi yardımınızı tecrübelerinizi eksik etmediniz.

Sağolun varolun. Sakın beni lütfen yanlış anlamayın (eğer alınırsanız çok üzülürüm) fakat benim istediğim şekilde olmadı maalesef.

Neden olmadı?
Verdiğiniz kodları denedim, üçüncü basmada, hücrenin üst-ortasında birleştiriyor. Oysa orjinalinde böyle bir şey yok. Ben sadece orjinalini kullanmak istiyorum. Orjinalinde ne varsa onu istiyorum.


Şu ana kadar yazdıklarımın hepsini unutalım, baştan sıfırdan yazmak ve arz etmek istiyorum.

Orjinal Excel şeritte (yani ribbon üzerinde) bulunan bir düğmemiz var.

Bu düğmenin adı aynen şöyle
Birleştir ve Ortala

Bu düğmeye bastığımızda hücreleri birleştiriyor ve birleştirirken Yatay-Orta olarak hizalıyor. Dikey olarak herhangi bir etkisi yok.

Ve

ikinci kez bastığımızda ise birleşen hücreler normal hale geliyor ve hizalamalar “Yatay-Genel“ haline geliyor. Dikeyde ise yine bir etkisi yok.
Orjinalde durumlar böyle.


Sayın Rasim’in 2 nolu mesajındaki kodlar tam istediğim gibiydi. Çünkü birleştirme esnasında yatay ortalama ve dikey ortalama seçenekleri vardı. Hangisini istersem onu kullanabilecektim. Çok hoşuma gitmişti.

İşte bu kodların altına sadece
ikinci basışta Yatay olarak Genel hale gelmesini sağlayan satırın ilave olmasını istiyorum.
Dikey olarak ise hiç bir değişiklik istemiyorum. Zira orjinali o şekilde.

Çünkü Birleştir ve Ortala düğmesine ikinci basışımızda aynen böyle oluyor.

Tekrar etmek istiyorum.
Orjinal şeritte Birleştir ve Ortala düğmesinde olduğu gibi, ikinci kez bastığımızda, Yatay olarak Genel olmasını istirham ediyorum.



Sayın Ahmet Rasim’in 2 nolu mesajdaki kodları

With Selection ' Seçili alan için
.HorizontalAlignment = xlCenter ' Yatay Ortala
.VerticalAlignment = xlCenter ' Dikey Ortala
.Merge ' Birleştir
End With


Umarım anlatabilmişimdir.
Arz ederim.
 
Merhabalar,

Öncelikle, Ömer Hocamın paylaşımı için teşekkür ederim :) öğrenecek çok şey var.

Sn. hakki83
Aşağıdaki kodları Module içine yapıştırınız.
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(23 satır)
Sayın Ahmet Rasim teşekkür ederim, hemen deneyeyim.

Sayın Ömer Baran hocamıza da sonsuz saygılar selamlar :)
 
Üst