نحوه تعویض ستون ها و ردیف ها در اکسل

  • این را به اشتراک بگذارید
Michael Brown

این آموزش راه‌های مختلفی را برای تغییر ردیف‌ها به ستون‌ها در اکسل نشان می‌دهد: فرمول‌ها، کد VBA، و یک ابزار خاص.

انتقال داده‌ها در اکسل کاری است که برای بسیاری از کاربران آشناست. اغلب اوقات شما یک جدول پیچیده می سازید تا متوجه شوید که چرخاندن آن برای تجزیه و تحلیل بهتر یا نمایش داده ها در نمودارها کاملا منطقی است.

در این مقاله راه های مختلفی برای تبدیل ردیف ها به ستون ها (یا ستون به ردیف)، هر کدام که آن را صدا کنید، همان چیزی است: ) این راه حل ها در تمام نسخه های اکسل 2010 تا اکسل 365 کار می کنند، بسیاری از سناریوهای ممکن را پوشش می دهند و اغلب اشتباهات معمولی را توضیح می دهند.

    <. 6>تبدیل ردیف ها به ستون در اکسل با استفاده از Paste Special

    فرض کنید مجموعه داده ای مشابه آنچه در قسمت بالای گرافیک زیر می بینید دارید. نام کشورها در ستون‌ها سازمان‌دهی شده‌اند، اما فهرست کشورها بسیار طولانی است، بنابراین بهتر است ستون‌ها را به ردیف تغییر دهیم تا جدول در صفحه قرار بگیرد:

    برای تغییر ردیف به ستون، این مراحل را انجام دهید:

    1. داده اصلی را انتخاب کنید. برای انتخاب سریع کل جدول، یعنی تمام سلول های دارای داده در یک صفحه گسترده، Ctrl + Home و سپس Ctrl + Shift + End را فشار دهید.
    2. سلول های انتخابی را با کلیک راست روی انتخاب و انتخاب کپی کنید. را از منوی زمینه یا با فشار دادن Ctrl + C کپی کنید.
    3. سلول اول محدوده مقصد را انتخاب کنید.

      حتماً سلولی را انتخاب کنید کهاین و بیش از 70 ابزار حرفه‌ای دیگر را برای Excel امتحان کنید، از شما دعوت می‌کنم یک نسخه آزمایشی از Ultimate Suite ما را دانلود کنید. ممنون که خواندید و امیدوارم هفته آینده شما را در وبلاگ خود ببینم!

      خارج از محدوده حاوی داده های اصلی شما قرار می گیرد، به طوری که مناطق کپی و چسباندن با هم همپوشانی ندارند. به عنوان مثال، اگر در حال حاضر 4 ستون و 10 ردیف دارید، جدول تبدیل شده دارای 10 ستون و 4 ردیف خواهد بود.
    4. روی سلول مقصد کلیک راست کرده و Paste Special را انتخاب کنید. منوی زمینه، سپس Transpose را انتخاب کنید.

    برای اطلاعات بیشتر، لطفاً به نحوه استفاده از Paste Special در Excel مراجعه کنید.

    توجه اگر داده‌های منبع شما حاوی فرمول‌هایی است، مطمئن شوید که به درستی از ارجاعات نسبی و مطلق بسته به اینکه آیا آنها باید تنظیم شوند یا در سلول‌های خاصی قفل می‌شوند، استفاده کنید.

    همانطور که اخیراً مشاهده کردید، ویژگی Paste Special به شما امکان می دهد تبدیل سطر به ستون (یا ستون به سطر) را به معنای واقعی کلمه در چند ثانیه انجام دهید. این روش همچنین قالب‌بندی داده‌های اصلی شما را کپی می‌کند، که یک استدلال دیگر به نفع آن اضافه می‌کند.

    با این حال، این روش دارای دو اشکال است که مانع از نامیده شدن آن به عنوان یک راه‌حل عالی برای جابجایی می‌شود. داده ها در اکسل:

    • برای چرخاندن جداول اکسل کاملاً کاربردی مناسب نیست. اگر کل جدول را کپی کنید و سپس کادر گفتگوی Paste Special را باز کنید، گزینه Transpose را غیرفعال خواهید دید. در این مورد، باید جدول را بدون سرصفحه ستون کپی کنید یا ابتدا آن را به یک محدوده تبدیل کنید.
    • Paste Special > Transpose پیوند جدید را ایجاد نمی کند. جدولبا داده های اصلی، بنابراین فقط برای تبدیل های یک بار مناسب است. هر زمان که داده های منبع تغییر کرد، باید این روند را تکرار کنید و جدول را دوباره بچرخانید. هیچ‌کس نمی‌خواهد وقت خود را برای جابه‌جایی دوباره و دوباره همان سطرها و ستون‌ها تلف کند، درست است؟

    چگونه یک جدول را جابه‌جا کنیم و آن را به داده‌های اصلی پیوند دهیم

    بیایید ببینید چگونه می توانید ردیف ها را با استفاده از تکنیک آشنای Paste Special به ستون تغییر دهید، اما جدول حاصل را به مجموعه داده اصلی متصل کنید. بهترین چیز در مورد این رویکرد این است که هر زمان که داده ها را در جدول منبع تغییر می دهید، جدول برگشتی تغییرات را منعکس می کند و بر اساس آن به روز می شود.

    1. ردیف هایی را که می خواهید به ستون (یا ستون) تبدیل کنید کپی کنید. به سطرها تغییر دهید).
    2. یک سلول خالی در همان کاربرگ یا برگه دیگر را انتخاب کنید.
    3. گفتگوی Paste Special را باز کنید، همانطور که در مثال قبلی توضیح داده شد و کلیک کنید پیوند پیوند در گوشه پایین سمت چپ:

    نتیجه ای مشابه این خواهید داشت:

  • جدول جدید را انتخاب کنید و گفتگوی Find and Replace Excel را باز کنید (یا Ctrl + H را فشار دهید تا بلافاصله به برگه Replace برسید).
  • Replace all " =" کاراکترهایی با "xxx" یا هر کاراکتر دیگری که در هیچ کجای داده های واقعی شما وجود ندارد.
  • این جدول شما را به چیزی تبدیل می کند کمی ترسناک است، همانطور که در تصویر زیر می بینید، اما نترسید،فقط 2 مرحله دیگر، و به نتیجه دلخواه خواهید رسید.

  • جدول را با مقادیر "xxx" کپی کنید و سپس از Paste Special > برای برگرداندن ستون‌ها به ردیف‌ها را جابجا کنید
  • در نهایت، یک بار دیگر کادر گفتگوی Find and Replace را باز کنید تا تغییر را معکوس کنید، یعنی تمام "xxx" را با "=" جایگزین کنید تا بازیابی شود. پیوند به سلول های اصلی.
  • این راه حل کمی طولانی اما ظریف است، اینطور نیست؟ تنها اشکال این روش این است که قالب بندی اصلی در این فرآیند گم می شود و شما باید آن را به صورت دستی بازیابی کنید (در ادامه این آموزش یک راه سریع برای انجام این کار به شما نشان خواهم داد).

    چگونه برای جابه‌جایی در اکسل با استفاده از فرمول‌ها

    یک راه سریع‌تر برای تغییر پویا ستون‌ها به ردیف‌ها در اکسل استفاده از فرمول TRANSPOSE یا INDEX/ADDRESS است. مانند مثال قبلی، این فرمول‌ها همچنین اتصالات را به داده‌های اصلی حفظ می‌کنند اما کمی متفاوت عمل می‌کنند.

    تغییر ردیف‌ها به ستون‌ها در Excel با استفاده از تابع TRANSPOSE

    همانطور که از نام آن پیداست، تابع TRANSPOSE به طور ویژه برای انتقال داده ها در اکسل طراحی شده است:

    =TRANSPOSE(array)

    در این مثال، ما می خواهیم جدول دیگری را که ایالات ایالات متحده را بر اساس جمعیت فهرست می کند تبدیل کنیم:

    1. تعداد سطرها و ستون ها را در جدول اصلی خود بشمارید و همان تعداد سلول خالی را انتخاب کنید، اما در جهت دیگر.

      برای مثال، جدول نمونه ما دارای 7 ستون و 6 ردیف استسرفصل ها از آنجایی که تابع TRANSPOSE ستون ها را به ردیف تبدیل می کند، ما محدوده ای از 6 ستون و 7 ردیف را انتخاب می کنیم.

    2. با انتخاب سلول های خالی، این فرمول را تایپ کنید:

      =TRANSPOSE(A1:G6)

    3. از آنجایی که فرمول ما باید در چندین سلول اعمال شود، Ctrl + Shift + Enter را فشار دهید تا به فرمول آرایه تبدیل شود.

    Voilà، ستون ها به صورت دقیقاً همانطور که می خواستیم به ردیف تغییر کرد:

    مزایای تابع TRANSPOSE:

    مزیت اصلی استفاده از تابع TRANSPOSE این است که جدول چرخانده اتصال به جدول منبع را حفظ می کند و هر زمان که داده منبع را تغییر دهید، جدول انتقال داده شده نیز مطابق با آن تغییر می کند.

    ضعف های تابع TRANSPOSE:

    • قالب بندی جدول اصلی در جدول تبدیل شده ذخیره نمی شود، همانطور که در تصویر بالا مشاهده می کنید.
    • اگر سلول های خالی در جدول اصلی وجود داشته باشد، سلول های انتقال یافته حاوی 0 خواهند بود. برای رفع این مشکل، از TRANSPOSE در ترکیب با تابع IF همانطور که در این مثال توضیح داده شده است استفاده کنید: نحوه جابجایی بدون صفر.
    • شما نمی توانید هیچ سلولی را در جدول چرخانده ویرایش کنید زیرا بسیار به داده های منبع وابسته است. اگر بخواهید مقداری سلول را تغییر دهید، در نهایت با خطای "شما نمی توانید بخشی از یک آرایه را تغییر دهید" مواجه خواهید شد.

    در پایان، عملکرد TRANSPOSE هر چه خوب و آسان باشد. ، مطمئناً فاقد انعطاف است و بنابراین ممکن است بهترین نباشددر بسیاری از موقعیت ها راه حلی است.

    برای اطلاعات بیشتر، لطفاً تابع Excel TRANSPOSE را همراه با مثال ببینید.

    تبدیل ردیف به ستون با توابع INDIRECT و ADDRESS

    در این مثال، از ترکیب دو تابع استفاده خواهد شد که کمی مشکل است. بنابراین، بیایید یک جدول کوچکتر را بچرخانیم تا بتوانیم بهتر روی فرمول تمرکز کنیم.

    فرض کنید، داده‌هایی در 4 ستون (A - D) و 5 ردیف (1 - 5) دارید:

    <. 26>

    برای اینکه ستون‌ها به ردیف تبدیل شوند، موارد زیر را انجام دهید:

    1. فرمول زیر را در سلول سمت چپ محدوده مقصد، مثلاً A7، وارد کنید و کلید Enter را فشار دهید. :

      =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

    2. با کشیدن یک ضربدر سیاه کوچک در گوشه سمت راست پایین سلول های انتخاب شده، فرمول را به سمت راست و پایین به تعداد ردیف و ستون مورد نیاز کپی کنید:

    همین! در جدول جدید ایجاد شده شما، همه ستون ها به ردیف تغییر می کنند.

    اگر داده های شما در ردیفی غیر از 1 و ستونی غیر از A شروع می شود، باید از فرمول کمی پیچیده تر استفاده کنید:

    =INDIRECT(ADDRESS(COLUMN(A1) - COLUMN($A$1) + ROW($A$1), ROW(A1) - ROW($A$1) + COLUMN($A$1)))

    جایی که A1 بالاترین سلول جدول منبع شما در سمت چپ است. همچنین، لطفاً به استفاده از ارجاعات سلولی مطلق و نسبی توجه داشته باشید.

    با این حال، سلول های انتقال یافته در مقایسه با داده های اصلی بسیار ساده و کسل کننده به نظر می رسند:

    اما ناامید نشوید، این مشکل به راحتی قابل حل است. برای بازیابی قالب اصلی، کاری که باید انجام دهید این است:

    • کپی اصلیجدول.
    • جدول حاصل را انتخاب کنید.
    • روی جدول به دست آمده کلیک راست کرده و گزینه های چسباندن > قالب بندی را انتخاب کنید.

    مزایا : این فرمول روشی انعطاف‌پذیرتر برای تبدیل ردیف‌ها به ستون در اکسل ارائه می‌کند. این اجازه می دهد تا هر گونه تغییری در جدول انتقال داده شود زیرا از یک فرمول معمولی استفاده می کنید، نه یک فرمول آرایه.

    کاستی ها : من فقط می توانم یکی را ببینم - قالب بندی داده های ترتیبی از بین رفته است. با این حال، همانطور که در بالا نشان داده شده است، می توانید به سرعت آن را بازیابی کنید.

    این فرمول چگونه کار می کند

    اکنون که می دانید چگونه از ترکیب INDIRECT / ADDRESS استفاده کنید، ممکن است بخواهید بینشی از آنچه فرمول در واقع انجام می دهد.

    همانطور که از نامش پیداست، تابع INDIRECT برای ارجاع غیرمستقیم یک سلول استفاده می شود. اما قدرت واقعی INDIRECT این است که می‌تواند هر رشته‌ای را به مرجع تبدیل کند، از جمله رشته‌ای که با استفاده از توابع دیگر و مقادیر سلول‌های دیگر ایجاد می‌کنید. و این دقیقاً همان کاری است که ما قرار است انجام دهیم. اگر این کار را دنبال کنید، بقیه را به راحتی درک خواهید کرد: )

    همانطور که به یاد دارید، ما از 3 تابع دیگر در فرمول استفاده کرده ایم - ADDRESS، COLUMN و ROW.

    تابع ADDRESS آدرس سلول را به ترتیب با شماره ردیف و ستونی که شما مشخص کرده اید به دست می آورد. لطفا ترتیب را به خاطر بسپارید: سطر اول، ستون دوم.

    در فرمول ما مختصات را به ترتیب معکوس ارائه می کنیم و ایناین چیزی است که در واقع کار را انجام می دهد! به عبارت دیگر، این بخش از فرمول ADDRESS(COLUMN(A1),ROW(A1)) ردیف ها را به ستون ها مبادله می کند، یعنی یک شماره ستون را می گیرد و آن را به شماره ردیف تغییر می دهد، سپس یک شماره ردیف می گیرد و آن را به ستون تبدیل می کند. شماره.

    در نهایت تابع INDIRECT داده های چرخانده شده را خروجی می دهد. اصلاً چیز وحشتناکی نیست؟

    انتقال داده ها در اکسل با استفاده از ماکرو VBA

    برای خودکارسازی تبدیل ردیف ها به ستون ها در اکسل، می توانید از ماکرو زیر استفاده کنید:

    Sub TransposeColumnsRows () Dim SourceRange به عنوان Range Dim DestRange به عنوان Range Set SourceRange = Application.InputBox(Prompt:= "لطفا محدوده ای را برای جابجایی انتخاب کنید"، عنوان:= "Transpose Rows to Columns" , Type :=8) تنظیم DestRange = Application.InputBox (Prompt:= "انتخاب سلول سمت چپ بالای محدوده مقصد" , Title:= "Transpose Rows to Columns" , Type :=8) SourceRange.Copy DestRange. Selection.PasteSpecial Paste:=xlPasteAll، Operation:=xlNone، SkipBlanks:= False، Transpose:= True Application.CutCopyMode = False End Sub

    برای افزودن یک ماکرو به کاربرگ خود، لطفاً دستورالعمل‌های توضیح داده شده در نحوه درج را انتخاب کنید. و کد VBA را در اکسل اجرا کنید.

    توجه داشته باشید. انتقال با VBA دارای محدودیت 65536 عنصر است. در صورتی که آرایه شما از این حد فراتر رود، داده‌های اضافی بی‌صدا دور ریخته می‌شوند.

    نحوه استفاده از ماکرو برای تبدیل ردیف به ستون

    با درج ماکرو در کتاب کار خود، موارد زیر را انجام دهیدمراحل چرخاندن جدول:

    1. کاربرگ مورد نظر را باز کنید، Alt + F8 را فشار دهید، ماکرو TransposeColumnsRows را انتخاب کنید و روی Run کلیک کنید.

  • محدوده‌ای را که می‌خواهید ردیف‌ها و ستون‌ها را تغییر دهید انتخاب کنید و روی OK :
  • کلیک کنید. سلول سمت چپ بالای محدوده مقصد را انتخاب کنید و روی OK :
  • از نتیجه لذت ببرید :)

    <3 کلیک کنید>

    تغییر ستون‌ها و سطرها با ابزار Transpose

    اگر نیاز دارید که تبدیل ردیف به ستون را به طور منظم انجام دهید، ممکن است در واقع به دنبال راه سریع‌تر و ساده‌تری باشید. خوشبختانه، من چنین راهی را در اکسل خود دارم، و همینطور سایر کاربران Ultimate Suite ما :)

    اجازه دهید به شما نشان دهم چگونه ردیف ها و ستون ها را در اکسل به معنای واقعی کلمه با چند کلیک تغییر دهید:

    1. هر سلولی را در جدول خود انتخاب کنید، به گروه Ablebits > Transform بروید و روی دکمه Transpose کلیک کنید.

  • تنظیمات پیش‌فرض در بیشتر موارد به خوبی کار می‌کنند، بنابراین شما به سادگی روی Transpose بدون تغییر چیزی کلیک کنید.
  • اگر می‌خواهید فقط مقادیر را جای‌گذاری کنید یا پیوندهایی به داده‌های منبع ایجاد کنید تا جدول چرخانده شده را مجبور کنید با هر تغییری که در جدول اصلی ایجاد می‌کنید به‌طور خودکار به‌روزرسانی شود، گزینه مربوطه.

    انجام شد! جدول جابجا می شود، قالب بندی حفظ می شود، نیازی به دستکاری بیشتر نیست:

    اگر کنجکاو هستید

    مایکل براون یک علاقه‌مند به فناوری است که علاقه زیادی به ساده‌سازی فرآیندهای پیچیده با استفاده از ابزارهای نرم‌افزاری دارد. او با بیش از یک دهه تجربه در صنعت فناوری، مهارت های خود را در Microsoft Excel و Outlook و همچنین Google Sheets و Docs تقویت کرده است. وبلاگ مایکل اختصاص داده شده است تا دانش و تخصص خود را با دیگران به اشتراک بگذارد و نکات و آموزش هایی را برای بهبود بهره وری و کارایی ارائه دهد. چه یک حرفه ای با تجربه باشید و چه مبتدی، وبلاگ مایکل، بینش های ارزشمند و توصیه های عملی را برای استفاده حداکثری از این ابزارهای نرم افزاری ضروری ارائه می دهد.