Yanıtlar:
Bir Kullanıcı Tanımlı İşlev kullanma, hücre tarafından zor kodlanan hücreden çok daha esnek olacaktır
Yeni formülünüzü D6 hücre anlık görüntüsündeki gibi kullanın
=ConCat(A1:A5)
=ConCat(A1:A5,A7:A24)
2D olan D7 veya D8'deki gibi daha karmaşık formülleri kullanabilirsiniz.
=concat(A1:B5,A7:A24)
Function ConCat(ParamArray rng1()) As String
Dim X
Dim strOut As String
Dim strDelim As String
Dim rng As Range
Dim lngRow As Long
Dim lngCol As Long
Dim lngCnt As Long
strDelim = ", "
For lngCnt = LBound(rng1) To UBound(rng1)
If TypeOf rng1(lngCnt) Is Range Then
If rng1(lngCnt).Cells.Count > 1 Then
X = rng1(lngCnt).Value2
For lngRow = 1 To UBound(X, 1)
For lngCol = 1 To UBound(X, 2)
strOut = strOut & (strDelim & X(lngRow, lngCol))
Next
Next
Else
strOut = strOut & (strDelim & rng2.Value)
End If
End If
Next
ConCat = Right$(strOut, Len(strOut) - Len(strDelim))
End Function
İlk önce
=concatenate(A1,",")
Bir sonraki sütunda değerlerin yanında.
İkincisi, tüm sütunu kopyalayın ve başka bir sayfaya gidin.
Birleştirme işlevini kullanabilir ve hücreler ve dize arasında geçiş yapabilirsiniz ","
:
=CONCATENATE(A1,",",A2,",",A3,",",A4,",",A5)
Looong bir değer sütunu ise, CONCATENATE işlevini kullanabilirsiniz, ancak hızlı bir şekilde yapmak biraz zordur. Hücrelerin A1: A10 olduğunu varsayarsak, B9 ve B10'da şu formülleri koydu:
B9: = A9 ve "," & B10
B10: = A10
Şimdi, B9 kopyalayın ve tüm hücrelere YUKARI B sütununun üstüne yapıştırın
B1'de şimdi tam bir sonuç alacaksınız. Kopyala> Özel Yapıştır> Değerler.
Şaşırtıcı cevap, karthikeyan. VB'de zaman harcamak, hatta Ctrl + H'den kaçmak istemedim. Bu en basit olurdu ve bunu yapıyorum.
Not Defteri en basit ve en hızlıdır. Excel'den, A sütununda sayıları çalıştırmak için bir sütuna ekledim. Verilerim B sütununda. Sonra A ve B sütununu not defterine kopyaladım. Not işlevinde değiştirme işlevini kullanarak fazladan boşluk kaldırıldı. Not defterinden kopyalandı ve tek hücrede excel'e tekrar yapıştırıldım. VB gerekli değil!
İzlenecek en iyi ve basit çözüm:
Tek sütuna kopyalamak istediğiniz sütunların aralığını seçin
Hücre aralığını kopyala (birden çok sütun)
Not Defteri'ni açın ++
Seçili hücre aralığını yapıştır
Ctrl + H tuşlarına basın, \ t ile \ n değiştirin ve hepsini değiştir
tüm çoklu sütunlar tek bir sütunun altına düşer
şimdi aynı kopyalayın ve excel yapıştırın
VBA'da kodlama zamanını harcamak istemeyenler için basit ve etkili bir çözüm
Bir sütundaki değerlerin listesini tek bir hücrede birleştirmenin en kolay yolu, basit bir birleşik formül kullandığımı buldum. 1) Yeni sütun ekle 2) İlk değer olarak birleştirmek istediğiniz sütunu, ikinci değer olarak bir ayırıcı (boşluk, virgül, vb.) Ve formülü üçüncü olarak yerleştirdiğiniz hücrenin altındaki hücreyi kullanarak birleşik formül ekleyin değer, kıymet. 3) İlgili sütundaki verilerin sonuna kadar formülü aşağı sürükleyin 4) Formülleri kaldırmak için yeni oluşturulan sütuna özel değerleri kopyalayıp yapıştırın ve BOOM! ... tüm değerler şimdi üst hücrededir.
Örneğin, aşağıdaki formül, C3 hücresinde A sütununda listelenen tüm değerleri, bunları ayıran bir yarı-kolonla birleştirecektir = CONCATENATE (A3, ";", C4)
İşte hızlı bir yol ... Doldurma kullanarak her değerin yanına bir "," sütunu ekleyin. Bir CONCATE formülü yerleştirin, aralıktaki her iki sütunu da yapın. Sonuç, tek bir hücre, virgüllerle birleştirilmiş bir liste ve her biri için bir boşluktur.
1 2 3 4
(her satırda bir değer). B1: B4'te var ", "
. C5'te Ben =concatenate(A1:B4).
bu gerçekten işe yaradıysa, oldukça iyi olurdu, ama görünmüyor. Başka bir şey mi hayal ediyordun?