„Excel“ makro dinaminis stulpelių pasirinkimas

  • Problema
  • Sprendimas
  • Pastaba

Problema

Aš tik pradėjau išmokti „Excel“ makrokomandas. Dirbau lape, kuriame turiu dinamiškai pasirinkti stulpelį, remiantis tik stulpelio antraštės pavadinimu. Leisk man paaiškinti.

Pasakykite, kad yra „Excel“ lapas, kuriame yra šie stulpeliai (nuo A1 iki D1):

 RecNo Cust_ID Cust_Name Contact_Num 

Žemiau pateikiami kliento duomenys. Dabar noriu išskirti tik Cust_ID (iš B stulpelio) ir Cust_Name (iš C stulpelio) visiems įrašams.

Tačiau problema yra ta, kad nebūtina, kad Cust_ID visada būtų B stulpelyje. Nors antraštė visada bus Cust_ID, jos vieta gali būti pakeista į C stulpelį, kuris buvo sukurtas, o Cust_Name galėjo būti B skiltis (du stulpeliai, kuriuos reikia išgauti) buvo pakeisti.

Naudodamas atitikties funkciją galiu nustatyti stulpelio padėtį, bet po to negaliu pasirinkti to stulpelio.

Toliau pateikiama funkcija, kurią naudoju stulpelio numeriui nustatyti:

 WorksheetFunction.Match („Cust_ID“, diapazonas („A1: D1“), 0) 

Sprendimas

Tiesiog naudokite šiuos:

 „Duomenų lapo nustatymas. D lngLastLowRow As Long Dim lngLastCol As Long Dim varDataSelect As Variant „Pasirinkite eilutes ir stulpelius dinamiškai. Pasirinkti.End (xlDown) .Pasirinkite lngLastRowNum = ActiveCell.Row Selection.End (xlToRight) .Pasirinkite lngLastCol = ActiveCell.Column 'Darbalapio pavadinimas „MonthlyReceivedClaims_Data“ prasideda 1 eilutės 1 stulpelyje ir baigiasi „: R“ & lngLastRowNum & „C“ & lngLastCol varDataSelect = "MonthlyReceivedClaims_Data! R1C1: R" & lngLastRowNum & "C" & lngLastCol ActiveWorkbook.PivotCaches.Add (SourceType: = xlDatabase, SourceData: = _ varDataSelect). = "PivotTable1", DefaultVersion: = _ xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination: = ActiveSheet.Cells (3, 1) 

„Taip pat padeda naudoti įrašų makro funkciją įrankiuose.

„Spustelėkite įrašą. Padarykite tokią ataskaitą ar sukimo lentelę kaip norite.

Tada spustelėkite Stabdyti įrašą ir redaguoti kodą, jei reikia.

Pastaba

Ačiū AM už šį patarimą forume.

Ankstesnis Straipsnis Kitas Straipsnis

Geriausi Patarimai