Excel'de bir sendika operatörü var mı?


6

Excel 2010'da bir sendika operatörü olup olmadığını bilen var mı?

denedim ; ve ,, ikisi de işe yaramadı. Örneğin, =E2:E3;E4:E6, =E2:E3,E4:E6, {=E2:E3;E4:E6} ve {=E2:E3,E4:E6} her zaman bir hata döndür.


Operatörü tam olarak nerede kullanmanız gerekiyor?
tumchaaditya

SUM gibi bir işlev uygulamak veya aralıktaki hücreleri birleştirmek isteyip istemediğinizi açıklayabilir misiniz?
datatoo

Yanıtlar:


9

Excel 'union' operatörü her zaman olmuştur virgül* (Örneğin. A1:A9,F2:G4 ) kesişen işleci tek bir boşluk iken. Çalışmıyor, sadece tüm Excel fonksiyonları bu referans yöntemini kabul edemiyor.

İşte bazıları:

  • SUM()
  • COUNT()
  • COUNTA()
  • SMALL()
  • LARGE()
  • MIN()
  • MAX()
  • AVERAGE()

Ancak, bunu düşündüğünüzde , tam olarak matematiksel yapmaz Birlik , ancak daha fazla ekleme ayarlayın. Örneğin, =COUNT(A1,A1,A1) döner 3. Gerçekten bir sendika operatörü olsaydı, bu formül geri dönecekti 1.

** Bazı Euro sürümleri noktalı virgül kullanır ( ; ) bunun yerine, bilgisayarın bölgesel ayarlarına bağlı olarak. *

(Daha fazla okuma: Microsoft Office: Hesaplama operatörleri ve öncelik )


2
Ben sadece şimdi başka bir soruya cevap vermeye çalışırken karşılaştım - yukarıdaki doğrudur ancak teknik olarak, bir birimin parantez içine alınması gerektiğini düşünüyorum - SUM işlevini kullanıyorsanız o zaman = SUM (A1, B1, F1) sadece çoklu referanslar eklemenize izin veren SUM fonksiyonunu kullanmak - SMALL fonksiyonunda düzgün bir birliktelik görebilirsiniz, örn. SMALL((A1,B1,F1),2) - Eğer çalışmayan iç parantezleri kullanmazsanız - Bunu RANK ve FREQUENCY fonksiyonlarında da kullanabilirsiniz.
barry houdini

1
Şimdi SUM, AVERAGE vb. işlevler 255 Bundan şüphelendiğim argümanlar, bir zamanlar olabileceği kadar faydalıdır ..... ancak birliğin bir başka kullanımı, daha fazla bitişik olmayan hücrelerin, örneğin; =SUM(A1,B1,F1) iken 3 referans kullanıyor =SUM((A1,B1,F1)) sadece 1
barry houdini

Bu operatörle ilgili fonksiyona özgü hiçbir şeyin olmadığını unutmayın, her yerde çalışır. Örneğin =(A2,C8,C10) A2 kesişimini verecek A2 ve (A1,C8,C10) Sadece delice bir örnek vermek için. Genel olarak bundan kaçınmak istediğinizi unutmayın.
dtech

Doğru olmadığı yerlerde fonksiyonlar vardır. LINEST ve bu cevap işe yaramıyor.
Maciej Piechotka

5

Değerleri toplamak istiyorsanız, şunu yazabilirsiniz:

=SUM(I3:M3;I4:M4;I5:M5)

Metinleri birleştirmek istiyorsanız, bunu (veya Fareni kullan @soandos'un dediği gibi):

=CONCATENATE(A1;B1;C1;D1)

Yazmak istiyor gibisin =CONCATENATE(A1:D1). Ama bildiğim gibi, mümkün değil (hata verir) .


2
Cevabınıza eklemek isteyebileceğiniz zarif küçük numara: get-digital-help.com/2011/02/09/...
soandos

3

Soru çok açık değil, fakat şimdilik metinleri birleştirmek zorundasınız. Mesela - örneğinize göre E2, E3, E4, E5, E6 birliğini birleştirmek zorundaysanız, şöyle bir formül yazabilirsiniz:

=CONCATENATE(E2,E3,E4,E5,E6)

Kendim denedim: Tek tek hücreleri tanımlamanız gerekir. ":" Bu benim için de Conatenate'de çalışmıyor. Bu yüzden yukarıda açıklandığı gibi denemelisiniz.

Aksi, mmdemirbas'ın cevabı mükemmel şekilde açıklar. SUM Formül.


1

Kısacası cevap HAYIR.

Ancak, bazı işlevler için aşağıdaki geçici çözümü kullanabilirsiniz.

=COUNTA(B1:B3,A2:C2)-COUNTA(B1:B3 A2:C2)

Aralıkların ortak bir hücreye sahip olduğunu unutmayın (yani kesişen). "," Bazı işlevler tarafından birden fazla aralığın parametre olarak sağlanmasına izin vermek için kullanılır. Kesişme hücresini iki kez içereceği için bu birleşme değildir. İKİLİ İKİ olacaktır. Böylece, kavşağı çıkartarak doğru cevabı alırsınız.

Bu teknik aşağıdakilerle çalışmalıdır:

SUM() COUNT() COUNTA()

İşe yaramaz: SMALL() LARGE()

Formül çalışacak şekilde değiştirilebilir:

AVERAGE()

İle asla gerekli değildir MAX and MIN!

Bu şekilde çalışması ve UNION operatörü olmaması gerçek bir acı.

VBA'da uygun bir birleşim oluşturan bir işlev yazabilirsiniz:

bilgi için buraya bakın http://www.cpearson.com/excel/BetterUnion.aspx

yani

 Function ProperUnion(ParamArray Ranges() As Variant) As Range
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' ProperUnion
' This provides Union functionality without duplicating
' cells when ranges overlap. Requires the Union2 function.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Dim ResR As Range
    Dim N As Long
    Dim R As Range

    If Not Ranges(LBound(Ranges)) Is Nothing Then
        Set ResR = Ranges(LBound(Ranges))
    End If
    For N = LBound(Ranges) + 1 To UBound(Ranges)
        If Not Ranges(N) Is Nothing Then
            For Each R In Ranges(N).Cells
                If Application.Intersect(ResR, R) Is Nothing Then
                    Set ResR = Union2(ResR, R)
                End If
            Next R
        End If
    Next N
    Set ProperUnion = ResR
End Function
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.