Excel - Makron asetusten asettaminen ja automaattinen täyttäminen

Ongelma

Olen tallentanut makron Excelille ja osa koodista on luoda indeksi-sarake, joka täyttää solun sarakkeen (eli A2 = 1, A3 = 2 jne.) Sarakkeen B tietojen perusteella.

  • Makro tallensi ja toimi täydellisesti, mutta kun yritän käyttää sitä toisessa tiedostossa, makro tulee ongelmaksi, koska jokaisella tiedostolla ei ole sama määrä täytettyjä rivejä.
  • Miten voin muuttaa alla olevaa koodia, jotta voin mukautua mihin tahansa avautuvaan Excel-tiedostoon riippumatta siitä, kuinka monta riviä tietoja on?

 Sarakkeet ("A: A") Valitse Selection.Insert Shift: = xlToRight, CopyOrigin: = xlFormatFromLeftOrAbove Range ("A1") Valitse ActiveCell.FormulaR1C1 = "Hakemisto" sarakkeet ("B: B"). Sarakkeet ("A: A"). Valitse Selection.PasteSpecial Paste: = xlPasteFormats, Käyttö: = xlNone, _ SkipBlanks: = False, Transpose: = False Application.CutCopyMode = False Range ("A2") Valitse ActiveCell.FormulaR1C1 = "1" Alue ("A3") Valitse ActiveCell.FormulaR1C1 = "2" Alue ("A2: A3") Valitse valinta.AutoFill Destination: = Alue ("A2: A295324") Alue ("A2: A295324") .Select 

Ratkaisu

Kokeile seuraavaa koodia:

 Sub-testi () Dim lRow kuten pitkät sarakkeet ("A: A"). Valitse Selection.Insert Shift: = xlToRight Range ("A1"). Arvo = "Indeksi" Alue ("A2"). A3 "). Arvo = 2 Alue (" A2: A3 ") Valitse lRow = Alue (" B "ja rivit.Luku) .End (xlUp) .Arvivalinta.AutoFill-kohde: = Alue (" A2: A "& lRow) End Sub 

Kiitos TrowaD: lle tästä vinkistä.

Edellinen Artikkeli Seuraava Artikkeli

Top Vinkkejä