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ä.