Excel дээр баганыг эрэмбэлэх VBA (4 арга)

  • Үүнийг Хуваалц
Hugh West

Excel дээр VBA ашиглан эрэмбэлэхийн тулд та Range.Sort аргыг ашиглах хэрэгтэй. Энэ нийтлэлд бид Excel-ийн VBA Range.Sort аргаар хэрхэн баганыг эрэмбэлэхийг харуулах болно.

Ажлын дэвтэр татаж авах

Та Excel дасгалын номыг эндээс татаж авах боломжтой.

Баганыг VBA.xlsm ашиглан эрэмбэлэх

Excel-ийн Range.Sort арга VBA

Range.Sort арга VBA Excel-ийн утгын мужийг эрэмбэлдэг. Энд Муж нь бидний өсөх эсвэл буурах дарааллаар эрэмбэлэхийг хүсэж буй нүдний мужийг тодорхойлдог объектын хувьсагч юм.

Таны мэдэх шаардлагатай параметрүүдийг доор харуулав. тухай энэ аргатай ажиллах үед.

Параметр Шаардлагатай/ Нэмэлт Өгөгдлийн төрөл Тодорхойлолт
Түлхүүр Заавал биш Хувилбар Утга нь муж эсвэл баганыг заана эрэмбэлэх ёстой.
Захиалга Заавал биш XlSortOrder Эрэмбэлэх ажлыг гүйцэтгэх дарааллыг заана.
  • xlӨсөх = Өсөх дарааллаар эрэмбэлэх.
  • xlБуух = Буурах дарааллаар эрэмбэлэх.
Толгой Заавал биш XlYesNoGuess Эхний мөрөнд толгой мэдээлэл байгаа эсэхийг заана. .
  • xlNo = Баганад толгой гарчиг байхгүй үед; Өгөгдмөл утга.
  • xlТийм = Хэзээбаганууд толгойтой байна.
  • xlGuess = Excel-д толгой хэсгийг тодорхойлох боломж олгоно.

Excel-д баганыг эрэмбэлэхийн тулд VBA-г хэрэгжүүлэх 4 арга

Энэ хэсэгт та толгойтой ба толгойгүй нэг баганыг хэрхэн эрэмбэлэх , олон баганыг хэрхэн эрэмбэлэх талаар мэдэх болно. болон толгойгүй болон Excel-ийн баганад байгаа толгой хэсгийг давхар товшиж хэрхэн эрэмбэлэх .

1. Excel-д толгой хэсэггүйгээр нэг баганыг эрэмбэлэхийн тулд VBA оруулах

Хэрвээ та Excel ажлын хуудсан дээрх ганц баганыг VBA кодоор эрэмбэлэхийг хүсвэл дараахыг дагана уу. доорх алхмууд.

Энэ бол бидний VBA кодоор эрэмбэлэх багана юм.

Алхам:

  • Гар дээрх Alt + F11 товчийг дарж эсвэл таб руу очно уу Хөгжүүлэгч -> Visual Basic Visual Basic Editor -г нээнэ үү.

  • Попап гарч ирэх кодын цонхонд цэсний мөрнөөс , Оруулах -> Модуль .

  • Дараах кодыг хуулж кодын цонхонд буулгана уу.
1786

Таны код одоо ажиллахад бэлэн байна.

Энд,

  • Түлхүүр1:=Муж(“B5”) → Тодорхойлсон B5 код нь аль баганыг эрэмбэлэхийг мэдэх боломжийг олгоно.
  • Order1:=xlAscending → Багануудыг өсөх дарааллаар эрэмбэлэхийн тулд xlAscending дарааллыг зааж өгсөн. Хэрэв та баганыг буурах дарааллаар эрэмбэлэхийг хүсвэл оронд нь xlDescending гэж бичнэ үү.
  • Толгой:= xlNo →Манай баганад толгой гарчиг байхгүй тул бид үүнийг xlNo сонголтоор зааж өгсөн.

  • F5 дарна уу. гар дээрээ эсвэл цэсийн мөрнөөс Run -> Sub/UserForm -г ажиллуул. Та мөн макро ажиллуулахын тулд дэд цэсний жижиг Тоглуулах дүрс дээр дарж болно.

Та өөрийн баганыг одоо өсөх дарааллаар эрэмбэлсэн .

Энд бид өгөгдлийн мужийг Муж("B5:B15") гэж гараар тодорхойлсон болохыг анхаарна уу. ) .

Хэрэв та утгыг нэмэх эсвэл устгах замаар өгөгдлийг өөрчлөхийг хүсвэл өгөгдлийн багц дахь нүднүүдэд тулгуурлан автоматаар шинэчлэгдэх дараах кодыг хэрэгжүүлж болно.

7279

Үүний оронд үүнийг анхаарна уу. хүрээг гараар тодорхойлохын тулд Муж(“B5:B15”) , бид Муж( “B5”, Range(“B5”)) гэж бичсэн. End(xlDown)) .

Энэ нь баганыг хамгийн сүүлд дараалсан бөглөсөн нүдн дээр үндэслэн эрэмбэлнэ. Хэрэв хоосон нүд байвал өгөгдлийг зөвхөн эхний хоосон нүд хүртэл авч үзэх болно.

Дэлгэрэнгүй унших: Excel дээр хүснэгтийг эрэмбэлэх VBA (4 арга)

2. Толгойтой нэг баганыг эрэмбэлэхийн тулд VBA макро оруулах

Өмнөх хэсэгт бид толгойгүй нэг баганын өгөгдлийн олонлогтой байсан бол одоо a байна. толгойтой багана .

Энэ удаад бид үүнийг VBA макро ашиглан хэрхэн эрэмбэлэх талаар сурах болно.

Алхам:

  • Өмнө нь адил арга замаар Visual Basic Editor -г нээнэ үү. Хөгжүүлэгч табаас Оруулах a Модуль -г кодын цонхонд хийнэ.
  • Код цонхонд дараах кодыг хуулж буулгана уу.
2284

Таны код одоо ажиллахад бэлэн байна.

Энд,

  • Түлхүүр1:=Муж(" B5”) → Кодод аль баганыг эрэмбэлэхээ мэдэхийн тулд B5 -ийг зааж өгсөн.
  • Order1:=xlDescending → Энэ удаад бид баганыг дараах байдлаар эрэмбэлэх болно. буурах дарааллаар дарааллыг xlУруу гэж тодорхойлсон.
  • Толгой:= xlYes → Манай багана энэ удаад толгой гарчигтай тул бид үүнийг xlYes-ээр зааж өгсөн. сонголт.

  • энэ кодыг ажиллуулснаар та буурах дарааллаар эрэмблэгдсэн толгойтой баганыг авах болно. .

Дэлгэрэнгүй унших: Excel дээр VBA-р жагсаалтын хайрцгийг хэрхэн эрэмбэлэх вэ (Бүрэн гарын авлага)

Ижил төстэй заалтууд:

  • Excel дээр IP хаягийг хэрхэн эрэмбэлэх вэ (6 арга)
  • [Шийдсэн!] Excel-ийн эрэмбэлэх боломжгүй (2 шийдэл)
  • Excel дээр эрэмбэлэх товчийг хэрхэн нэмэх вэ (7 арга)
  • Ангилах хүрээ e Excel дээр VBA ашиглах (6 жишээ)
  • Excel дээр нэрээр нь хэрхэн эрэмбэлэх вэ (3 жишээ)

3. Толгойтой эсвэл толгойгүй олон баганыг эрэмбэлэх VBA макро

Та мөн өгөгдлийн багц дахь олон баганыг VBA кодоор эрэмбэлж болно.

Алхам:

  • Өмнө нь харуулсанчлан Хөгжүүлэгч табаас Visual Basic Editor -г нээж, Оруулах a Модуль кодын цонхонд.
  • Код цонхонд дараах кодыг хуулж буулгана уу.
2278

Таны код ажиллахад бэлэн боллоо.

Энд,

.SortFields.Add Key:=Range(“B4”), Order:=xlAscending

.SortFields.Add Key:=Range(“C4” ”), Order:=xlAscending

Энэ хоёр мөрөөр бид B4 болон C4 -г тодорхойлж, дараахтай холбоотой хоёр баганыг эрэмбэлж байна. тэдгээрийг өсөх дарааллаар .

Бидний өгөгдлийн багцад толгой хэсэг байгаа тул бид Толгой = xlYes -г зааж өгсөн, тэгэхгүй бол Толгой = гэж бичих байсан. xlNo код дотор байна.

  • энэ кодыг ажиллуулснаар та өсөх дарааллаар эрэмблэгдсэн толгойтой багануудыг авах болно. .

4. Excel програмын толгой хэсэгт давхар товшиж өгөгдлийг эрэмбэлэх макро

Хэрвээ та толгой дээр давхар товших -оор өгөгдлийг хялбархан эрэмбэлэхийг хүсвэл VBA код.

Алхам:

  • хуудасны таб дээр хулганы баруун товчийг дарна уу .
  • Харагдах сонголтуудын жагсаалтаас View Code -г товшино уу.
  • Код цонх гарч ирэх бөгөөд дараах кодыг хуулж, тэнд оруулна уу.
6467
  • Хадгалах код.

  • Одоо сонирхсон ажлын хуудас руугаа буцна уу. толгойн дээр давхар товшоод багануудыг дахин зохион байгуулж байгааг харах болно.

Дэлгэрэнгүй унших: Мэдээллийг хэрхэн ангилах, шүүх вэ Excel (Бүрэн заавар)

Санах зүйлс

  • Та дотор олон нүдний лавлагааг дамжуулахдаа нэрлэсэн муж үүсгэж оронд нь ашиглаж болно. Эрэмбэлэх арга. Жишээлбэл, хэрэв та A1:A10 мужийг эрэмбэлэхийг хүсвэл кодын доторх болгонд дамжуулахын оронд " SortRange<40" гэх мэт нэрлэсэн мужийг үүсгэж болно> ” гэж сонгоод Range(“SortRange”) гэх мэт Range.Sort аргаар ашиглана уу.
  • Хэрэв та өгөгдлийн багцдаа толгой хэсэг байгаа эсэхийг мэдэхгүй байгаа бол үгүй ч бай, та xlGuess параметрийг ашиглан үүнийг тодорхойлохыг системд зөвшөөрч болно.

Дүгнэлт

Энэ нийтлэл танд хэрхэн хийхийг харуулсан. баганыг Excel VBA дээр эрэмбэлэх. Энэ нийтлэл танд маш их ашиг тустай байсан гэж найдаж байна. Сэдвийн талаар асуух зүйл байвал асуугаарай.

Хью Уэст бол салбартаа 10 гаруй жил ажилласан туршлагатай Excel-ийн сургагч багш, шинжээч юм. Нягтлан бодох бүртгэл, санхүүгийн чиглэлээр бакалавр, бизнесийн удирдлагын магистр зэрэгтэй. Хью багшлах сонирхолтой бөгөөд дагаж мөрдөх, ойлгоход хялбар заах өвөрмөц арга барилыг боловсруулсан. Түүний Excel-ийн мэдлэг чадвар нь дэлхий даяарх олон мянган оюутан, мэргэжилтнүүдэд ур чадвараа дээшлүүлж, ажил мэргэжлээрээ амжилт гаргахад тусалсан. Хью өөрийн блогоороо дамжуулан өөрийн мэдлэгээ дэлхийтэй хуваалцаж, Excel програмын үнэгүй зааварчилгаа, онлайн сургалтыг хувь хүмүүс болон бизнесүүдэд бүрэн дүүрэн ашиглахад нь туслах зорилгоор санал болгодог.