2012-02-09 20 views
17

Microsoft Excel'de depolanan oldukça büyük bir veritabanı verildi, ki buna faydalı bir şeye dönüştürmem gerekiyor.
Ancak, karşılaştığım sorunlardan biri, bazı veriler bir araya getirildi (yatay olarak 2 sn).Excel satırları ayırma ve verileri çoğaltma

Örneğin; x bekar hücreleri ve o en vardır

row 1: [ x ][ x ][ x ][ x ][ x ] 
row 2: [ x ][ x ][ o o ][ x ] 
row 3: [ o o ][ x ][ o o ] 

birlikte

Ne yapmak istiyorsunuz (ben unmerge düğmesi ile oldukça kolay yapabileceği olan) tüm satırları unmerge olan

birleşti, ama nerede birleştirilmiş hücre için olan Veri 2 hücrede çoğaltılmış oldu.
[[ Some Data ]]
To; [ Some Data ][ Some Data ]

Teşekkürler! Herhangi bir yardım takdir edilir.

cevap

27

Bu bir VBA çözümüdür. Bu makro, birleştirilmiş olup olmadıklarını görmek için etkin sayfadaki her hücreyi arayacaktır. Eğer öyleyse, birleştirilmiş hücrelerin aralığını bir sıcaklıkta depolar. aralık değişkeni, hücreleri ayırır, daha sonra aralığı yayılmamış aralıktaki ilk hücrenin değeriyle doldurur (değerin ne olduğu).

Sub UnMergeFill() 

Dim cell As Range, joinedCells As Range 

For Each cell In ThisWorkbook.ActiveSheet.UsedRange 
    If cell.MergeCells Then 
     Set joinedCells = cell.MergeArea 
     cell.MergeCells = False 
     joinedCells.Value = cell.Value 
    End If 
Next 

End Sub 
+0

teşekkür ederiz girin ok! VBA'nın nasıl yürütülebileceğini anlamak için etrafa bir göz attı. – H3katonkheir

+0

Rica ederim (ve bu bilgiyi sizin için eklemediğim için üzgünüm)! – aevanko

+0

Issun, Kendi VBA'mda sadece "cell.MergeCells = False" olan bir satır kullandım, bu da benim için her sene birkaç kez hile yaptı.İlk önce her hücreyi kontrol etmeden her hücreyi birleştirir. –

4

Böyle bir şey için VBA gerekmez. > Bul ve Seç - -

  1. birleştirilmiş hücrelerle
  2. Ayır'a hücreleri
  3. Ev aralığını seçin> özel Git ... -> Boşluklar -> Tamam
  4. Tipi "=" hareket R1C1 stilleri arasından etkinse Ctrl +

girin bir hücre yukarı ve basma: Dosya -> Seçenekler -> Formula - o zaman> R1C1 Referans tarzı

  1. ...
  2. ...
  3. ...
  4. türü "= R '[-1] C" ve Ctrl + birleşmiştir aralığı seçin
7
  1. girin Birleşme ve Merkezi'ndeki veri
  2. tıklayın
  3. Ctrl + G> S tekrar veri aralığını seçin hücrelerini
  4. ayırmak pecial> Boşluklar
  5. basın = ve yukarı o mükemmel çalıştı, anahtar
  6. Ctrl +
İlgili konular