„Excel“ - makro duomenų kopijavimui iš skirtingų lapų

Problema

Bandau nukopijuoti duomenis iš skirtingų lapų į pagrindinį lapą pagal šiuos kriterijus

  • Pagrindinis lapas turėtų būti generuojamas, kai paleisiu makro, ištrinantį ankstesnį pagrindinį lapą.
  • Visos stulpelių antraštės yra tapačios.
  • Pagrindiniam lapui reikia nukopijuoti tik vieną antraštę (ty pirmoji eilutė neturėtų būti nukopijuota iš antrojo lapo.)
  • Jei rodomos tam tikros ląstelės nulinės reikšmės, ta eilutė neturėtų būti nukopijuota.
  • Pagrindinis lapas turėtų būti surūšiuotas pagal stulpelį, kurį paminėsiu vykdant makrokomandą. (Ty pranešimo laukelyje priskirsiu lauką / stulpelį, kuris turėtų būti rūšiuojamas pagrindiniame lape.)

Sprendimas

Turiu vieną abejonę, kad norite kopijuoti visų mėnesių duomenis į pagrindinį puslapį ARBA mėnesiui. Aš prisiėmiau visus mėnesius. Tokiu atveju išbandykite šį makrokomandą

 Sub testas () Dim j Kaip ilgas, k kaip ilgas, r kaip diapazonas j = darbalapiai.Skaičiuoti su darbalapiais ("šeimininkas") Nustatyti r = intervalas (.Rangas ("A2"), .Rangas ("A2"). (xlDown)) r.EntireRow.Delete Baigti su k = 1 To j Jei darbalapiai (k) .Name = "master" Tada GoTo errorhandler Su darbalapiais (k) Jei .Range ("A2") = "" Tada GoTo errorhandler Nustatyti r = intervalas (.Range ("A2"), .Range ("A2"). Pabaiga (xlDown)) r.EntireRow.Copy Worksheets ("master"). (xlUp) .Offset (1, 0) .PastaSpeciali pabaiga su klaidų tvarkytuvu: Kitas k Pabaigos pabaiga 

Jūsų faile yra per daug tuščių modulių. Pašalinkite visus, išskyrus modulį1.

Prisimink tai

Sprendžia venkat1926

Ankstesnis Straipsnis Kitas Straipsnis

Geriausi Patarimai