Mündəricat
Massivi və ya diapazonu TOCOL funksiyası ilə sütuna çevirməyin asan yolu.
Məlumatların sütunlardan sətirlərə və tərsinə köçürülməsi Excel-də çoxdandır var. bir müddət. Ancaq bir sıra hüceyrəni bir sütuna çevirmək çətin bir iş idi. İndi, nəhayət, bu dəyişir. Microsoft bir göz qırpımında massivdən sütuna çevrilməni həyata keçirə bilən TOCOL adlı yeni funksiyanı təqdim etdi. Aşağıda bu yeni funksiyanın asanlıqla həll edə biləcəyi tapşırıqların siyahısı verilmişdir.
Excel TOCOL funksiyası
Excel-də TOCOL funksiyası massivi və ya xanalar diapazonunu vahidə çevirir. sütun.
Funksiya üç arqument qəbul edir, lakin yalnız birincisi tələb olunur.
TOCOL(massiv, [iqnor], [sütunlara_scan])Burada:
Array (tələb olunur) - sütuna çevrilmək üçün massiv və ya diapazon.
İqnor (isteğe bağlı) - boşluqlara və/və ya xətalara məhəl qoymamağı müəyyən edir. Bu dəyərlərdən biri ola bilər:
- 0 və ya buraxılmış (defolt) - bütün dəyərləri saxlamaq
- 1 - boşluqlara məhəl qoyma
- 2 - səhvlərə məhəl qoyma
- 3 - boşluqlara və xətalara məhəl qoyma
Sütun üzrə_skan (isteğe bağlı) - massivin üfüqi və ya şaquli skan edilməsini müəyyən edir:
- YANLIŞ və ya buraxılmış (defolt) - massivi soldan sağa sıra skan edin.
- DOĞRU - massivi yuxarıdan aşağıya sütun üzrə skan edin.
Məsləhətlər:
- Massivi tək sıraya çevirmək üçün TOROW-dan istifadə edinfunksiyası.
- Əksinə sütun-massiv çevrilməsini etmək üçün ya sütun üzrə bükmək üçün WRAPCOLS funksiyasından, ya da sətir üzrə bükmək üçün WRAPROWS funksiyasından istifadə edin.
- Massivi üfüqidən massilə köçürmək üçün şaquli və ya əksinə, yəni satırları sütunlara dəyişdirin, TRANSPOSE funksiyasından istifadə edin.
TOCOL-un mövcudluğu
TOCOL Microsoft 365 (Windows üçün) üçün Excel-də dəstəklənən yeni funksiyadır. və Mac) və veb üçün Excel.
Dəzili sütuna çevirmək üçün əsas TOCOL düsturu
TOCOL düsturu ən sadə formada yalnız bir arqument tələb edir - massiv . Məsələn, 3 sütun və 4 sətirdən ibarət ikiölçülü massivi bir sütuna yerləşdirmək üçün düstur belədir:
=TOCOL(A2:C5)
Düstur yalnız bir xanaya daxil edilir (E2-də bu nümunə) və avtomatik olaraq aşağıdakı hüceyrələrə tökülür. Excel baxımından nəticə dağılma diapazonu adlanır.
Bu düstur necə işləyir:
Texniki olaraq A2:C5 diapazonu əvvəlcə ikiölçülü massiləyə çevrilir. Nöqtəli vergüllə ayrılmış sətirlərə və vergüllə ayrılmış sütunlara diqqət yetirin:
{"Apple","Banana","Cherry";1,0,3;4,#N/A,6;7,8,9}
TOCOL funksiyası massivi soldan sağa skan edir və onu birölçülü şaquli massivə çevirir:
{"Apple";"Banana";"Cherry";1;0;3;4;#N/A;6;7;8;9}
Nəticə E2 xanasına yerləşdirilir və oradan aşağıdakı xanalara tökülür.
Excel-də TOCOL funksiyasından necə istifadə olunur - düstur nümunələri
Daha çox başa düşmək üçünTOCOL funksiyasının imkanları və hansı tapşırıqları əhatə edə bilər, gəlin bəzi düstur nümunələrinə nəzər salaq.
Boşluqlara və xətalara məhəl qoymadan massivi sütuna çevirin
Əvvəlki misalda qeyd etdiyiniz kimi , defolt TOCOL düsturu mənbə massivindəki bütün dəyərləri, o cümlədən boş xanalar və səhvləri saxlayır.
Nəticədə massivdə boş xanalar sıfırlarla təmsil olunur, bu, xüsusilə orijinal massivdə çox qarışıq ola bilər. 0 dəyərlər. Həll yolu boşluqları atlamaqdır . Bunun üçün siz 2-ci arqumenti 1-ə təyin edirsiniz:
=TOCOL(A2:C5, 1)
səhvlərə məhəl qoymamaq üçün 2-ci arqumenti 2:
=TOCOL(A2:C5, 2)
boşluqları və səhvləri istisna etmək üçün iqnor etmə arqumenti üçün 3-dən istifadə edin:
=TOCOL(A2:C5, 3)
Üfüqi və ya şaquli olaraq skan edin
Defolt sütun_by_scan arqumenti ilə (YANLIŞ və ya buraxılmış), TOCOL funksiyası massivi üfüqi olaraq sətir üzrə skan edir. Dəyərləri sütun üzrə emal etmək üçün bu arqumenti TRUE və ya 1-ə təyin edin. Məsələn:
=TOCOL(A2:C5, ,TRUE)
Nəzərə alın ki, hər iki halda qaytarılan massivlər eyni ölçüdədir, lakin dəyərlər düzülür. fərqli qaydada.
Birdən çox diapazonu bir sütunda birləşdirin
Əgər siz bir-birinə bitişik olmayan bir neçə diapazonla məşğul olursunuzsa, onda siz əvvəlcə VSTACK funksiyasının köməyi ilə diapazonları şaquli olaraq tək massivdə birləşdirə bilərsiniz və sonra birləşdirilmiş massivi sütuna çevirmək üçün TOCOL-dan istifadə edin.
Birinci diapazonun A2:C4 və ikinci diapazonun A8:C9 olduğunu fərz etsək, düstur bu formanı alır:
=TOCOL(VSTACK(A2:C4, A8:C9))
Bu düstur defolt davranışı nümayiş etdirir - birləşdirilmiş massivləri soldan üfüqi oxuyur aşağıdakı şəkildəki E sütununda göstərildiyi kimi sağa.
Dəyərləri yuxarıdan aşağıya şaquli oxumaq üçün siz TOCOL-un 3-cü arqumentini TRUE olaraq təyin edirsiniz:
=TOCOL(VSTACK(A2:C4, A8:C9), ,TRUE)
Diqqət yetirin ki, bu halda düstur əvvəlcə hər iki massivin A sütunundan, sonra B sütunundan və s. dəyərləri qaytarır. Bunun səbəbi TOCOL-un orijinal fərdi diapazonları deyil, tək yığılmış massivi skan etməsidir.
Əgər biznes məntiqiniz orijinal diapazonların şaquli deyil, üfüqi şəkildə yığılmasını tələb edirsə, onda VSTACK əvəzinə HSTACK funksiyasından istifadə edin.
Hər bir sonrakı massivi əvvəlki massivin sağına əlavə etmək və oxumaq üçün üfüqi birləşdirilmiş massivlər üçün düstur belədir:
=TOCOL(HSTACK(A2:C4, A8:C10))
Hər bir sonrakı massivi əvvəlki massivin sağına əlavə etmək və birləşdirilmiş massivləri şaquli olaraq skan etmək üçün düstur belədir:
=TOCOL(HSTACK(A2:C4, A8:C10), ,TRUE)
Çox sütunlu diapazondan unikal dəyərlər çıxarın
Excel UNİKAL funksiyası bir sütunda və ya cərgədə unikalları asanlıqla tapa, həmçinin unikal sətirləri qaytara bilər, lakin o, unikal dəyərləri çıxara bilməz. çox sütunlu massiv. Həll yolu onu TOCOL funksiyası ilə birlikdə istifadə etməkdir.
Məsələn, diapazondan bütün müxtəlif (fərqli) dəyərləri çıxarmaq üçünA2:C7, düstur belədir:
=UNIQUE(TOCOL(A2:C7))
Əlavə olaraq, qaytarılmış massivi əlifba sırası ilə düzmək üçün yuxarıdakı düsturu SORT funksiyasına yığa bilərsiniz:
=SORT(UNIQUE(TOCOL(A2:C7)))
Excel 365-də diapazonu sütuna necə çevirmək olar - 2010
TOCOL funksiyasının dəstəkləndiyi Excel versiyalarında bir sıra xanaları sütuna çevirmək üçün bir neçə alternativ yol mövcuddur. Bu həllər olduqca mürəkkəbdir, lakin hər halda işləyir.
Sıra-sətir oxumaq üçün:
INDEX( aralıq , QUOTIENT(ROW(A1)-1, COLUMNS( ) diapazon ))+1, MOD(ROW(A1)-1, COLUMNS( aralıq ))+1)Aralığı sütun üzrə oxumaq üçün:
INDEX( diapazon , MOD(SATIR(A1)-1, SATIRLAR( aralıq ))+1, QUOTIENT(SATIR(A1)-1, SATIR( aralıq ))+1 )Nümunə verilənlər bazamız üçün düsturlar aşağıdakı kimidir:
Dəzişi üfüqi olaraq soldan sağa skan etmək üçün:
=INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)
Bu düstur 3-cü arqumenti YANLIŞ olaraq təyin edilmiş və ya buraxılmış TOCOL funksiyasına ekvivalentdir:
=TOCOL(A2:C5)
şaquli olaraq yuxarıdan aşağıya :
=INDEX($A$2:$C$5, MOD(ROW(A1)-1, ROWS($A$2:$C$5))+1, QUOTIENT(ROW(A1)-1, ROWS($A$2:$C$5))+1)
Bu düstur DOĞRU olaraq təyin edilmiş 3-cü arqumentlə TOCOL funksiyası ilə müqayisə edilə bilər:
=TOCOL(A2:C5, ,TRUE)
TOCOL-dan fərqli olaraq, alternativ düsturlar hər birinə daxil edilməlidir. nəticələrin görünməsini istədiyiniz xana. Bizim vəziyyətimizdə düsturlar E2 (sətir üzrə) və G2 (sütun üzrə) xanalarına keçir və sonra 13-cü sətirə kopyalanır.
Düsturlar lazım olduğundan daha çox sətirə kopyalanırsa, a#REF! xəta "əlavə" xanalarda görünəcək. Bunun baş verməsinin qarşısını almaq üçün düsturları IFERROR funksiyasında bu şəkildə yerləşdirə bilərsiniz:
=IFERROR(INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1), "")
Nəzərə alın ki, düsturların düzgün surətdə kopyalanması üçün mütləq xana istinadlarından ($) istifadə edərək diapazonu kilidləyirik. A$2:$C$5). Bunun əvəzinə siz adlandırılmış diapazondan istifadə edə bilərsiniz.
Bu düsturlar necə işləyir
Aşağıda xanaları sıra ilə düzən ilk düsturun ətraflı təsviri verilmişdir:
=INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)
İdeya, diapazondakı nisbi sətir və sütun nömrələrinə əsasən müəyyən xananın dəyərini qaytarmaq üçün INDEX funksiyasından istifadə etməkdir.
sətir nömrəsi bu kombinasiya ilə hesablanır. :
QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1
QUOTIENT bölmənin tam hissəsini qaytarır.
numerator üçün siz ROW(A1)-1 istifadə edirsiniz, hansı ki, seriya nömrəsi E2-də 0-dan (düsturun daxil olduğu ilk xana) E13-də 11-ə qədər (düsturun daxil olduğu son xana).
COLUMNS($A) tərəfindən gətirilən məxrəc $2:$C$5)) sabitdir və diapazonunuzdakı sütunların sayına bərabərdir (bizim halda 3).
İndi ilk 3 xana üçün QUOTIENT nəticəsini yoxlasanız (E2:E4) , onun 0-a bərabər olduğunu görəcəksiniz (çünki bölmənin tam hissəsi sıfırdır). 1-in əlavə edilməsi sətir nömrəsini 1 verir.
Növbəti 3 xana üçün (E5:E5) QUOTIENT 1-i qaytarır, +1 əməliyyatı isə 2-ci sıra nömrəsini verir.
Başqa sözlə, formulun bu hissəsi təkrarlama yaradır1,1,1,2,2,2,3,3,3,4,4,4,… kimi nömrə ardıcıllığı, diapazonunuzda sütunların sayı qədər təkrarlanır.
sütun nömrəsini hesablayın, MOD funksiyasından istifadə edərək müvafiq ədəd ardıcıllığı qurursunuz:
MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1
Bizim diapazonda (A2:C5) 3 sütun olduğundan, ardıcıllıq 1,2,3,1,2,3,…
MOD funksiyası bölmədən sonra qalanı qaytarır.
E2-də MOD(ROW(A1)-1, COLUMNS) ($A$2:$C$5))+1)
MOD(1-1, 3)+1)
olur və 1-i qaytarır.
E3-də MOD(ROW(A2)-1, COLUMNS($A$2:$C$5))+1)
olur
MOD(2-1, 3) +1)
və 2-ni qaytarır.
Sətir və sütun nömrələri qurulduqda, INDEX-in tələb olunan dəyəri əldə etməkdə heç bir problemi yoxdur.
E2-də INDEX($A$2) :$C$5, 1, 1) istinad edilən diapazonun 1-ci cərgəsindən və 1-ci sütunundan, yəni A2 xanasından dəyəri qaytarır.
E3-də INDEX($A$2:$C$5, 1) , 2) 1-ci sətirdən və 2-ci sütundan, yəni B2 xanasından dəyəri qaytarır.
Və s.
C ilə diapazonu skan edən ikinci düstur olumn, oxşar şəkildə işləyir. Fərq ondadır ki, o, sətir nömrəsini əldə etmək üçün MOD-dan, sütun nömrəsini əldə etmək üçün isə QUOTIENT-dən istifadə edir.
TOCOL funksiyası işləmir
TOCOL funksiyası xəta atırsa, bu, çox güman ki, bu səbəblərdən biri olmaq:
TOCOL Excel-də dəstəklənmir
Siz #NAME əldə etdiyiniz zaman? Səhv, funksiyanın adının düzgün yazılması ilk işdiryoxlayın. Ad düzgündürsə, lakin səhv davam edirsə, funksiya Excel versiyanızda mövcud deyil. Bu halda, TOCOL alternativindən istifadə etməyi düşünün.
Masiv çox böyükdür
#NUM xətası massivin sütuna sığmadığını göstərir. Tipik hal, bütün sütunlara və ya sətirlərə istinad etdiyiniz zamandır.
Kifayət qədər boş xana yoxdur
#SPILL xətası baş verdikdə, formulanın daxil edildiyi sütunun olub olmadığını yoxlayın. nəticələrlə doldurulacaq kifayət qədər boş xana var. Hüceyrələr vizual olaraq boşdursa, onlarda boşluq və digər çap olunmayan simvolların olmadığından əmin olun. Ətraflı məlumat üçün Excel-də #SPILL xətasını necə düzəltməyə baxın.
Beləliklə, siz Excel 365-də TOCOL funksiyasından və 2 ölçülü massivi tək sütuna çevirmək üçün əvvəlki versiyalardakı alternativ həllərdən istifadə edə bilərsiniz. Oxuduğunuz üçün sizə təşəkkür edirəm və sizi gələn həftə bloqumuzda görməyə ümid edirəm!
İş dəftərini məşq edin
Excel TOCOL funksiyası - formula nümunələri (.xlsx faylı)