Excel - O macrocomandă pentru setarea și completarea automată a unui interval

Problema

Am înregistrat o macro pentru Excel și o parte a codului este de a crea o coloană index care umple celula cu un număr de rând (adică A2 = 1, A3 = 2, etc.) pe baza datelor din Coloana B).

  • Macro-ul a înregistrat și a funcționat perfect, totuși atunci când încerc să-l folosesc pe un alt fișier, macro-ul se confruntă cu o problemă, deoarece fiecare fișier nu are aceleași cantități de rânduri pline de numărare.
  • Cum pot modifica codul de mai jos pentru a se adapta la orice fișier Excel pe care îl deschid indiferent de câte rânduri de date există?

 Selectați Selection.Insert Shift: = xlToRight, CopyOrigin: = xlFormatFromLeftOrAbove Range ("A1") Selectați ActiveCell.FormulaR1C1 = Coloana "Index" ("B: B"). Coloane ("A: A") Selectați Selection.PasteSpecial Paste: = xlPasteFormats, Operație: = xlNone, _ SkipBlanks: = False, Transpose: = False Application.CutCopyMode = Avertisment False ("A2") Select ActiveCell.FormulaR1C1 = "A2: A295324") Avertisment ("A2: A295324") Selectați "Destination": = Range ("A2: A295324") .Selectați 

Soluţie

Încercați următorul cod:

 Sub test () Dim LRow ca și coloane lungi ("A: A") Selectați Selection.Insert Shift: = xlToRight Range ("A1") Valoare = A3 ") Valoare = 2 Interval (" A2: A3 ") Selectați lRow = Intervalul (" B "& Rows.Count) .End (xlUp). lRow) End Sub 

Mulțumită lui TrowaD pentru acest sfat.

Articolul Precedent Articolul Următor

Cele Mai Importante Sfaturi