„Excel“ - makrokomandas pasirinktam diapazonui kopijuoti / įklijuoti

Problema

Turiu mėnesio duomenų santrauką viename lape ir neapdorotus duomenis kitame lape. Vietoj to, kad kiekvienam mėnesiui būtų sukurtos kelios mano neapdorotų duomenų lentelės, noriu ištrinti praėjusio mėnesio duomenis ir pakeisti naujus duomenis. Norėdami tai padaryti, turėsiu nukopijuoti santraukas sukurtą formulę į kitą stulpelį (naujam mėnesiui), o tada kopijuoti ir įklijuoti dabartinio mėnesio suvestinių duomenų vertę (taigi, kai šaltinio neapdoroti duomenys pasikeitė, tai nepakeistų mano vertės).

Pavyzdys

 ABCD Sau Vas Sau Kov 1 5 6 7 

Norėčiau, kad galutinis rezultatas atrodytų (ty nukopijuokite iš A3: A6 ir įklijuokite į B3. Tada kitą mėnesį jis nukopijuos iš B3: B6 ir įklijuokite į C3 ir pan.).

 ABCD Sau Vas Kov Bal 1 1 5 5 6 6 7 7 

Jan ir vasaris šiuo metu yra tokie patys, nes kopijavimas ir įklijavimas įvyksta prieš pakeisdami naujus duomenis.

Tikiuosi, kad tai prasminga. Turiu labai mažai žinių apie VB rašymą, bet sugebu skaityti ir suprasti paprastus. Ar kas nors man gali padėti makro, kuris tai padarys automatiškai?

Sprendimas

Šiame makrokomandoje naudojamas įvesties dėžutė, kad paklaustumėte, kokį mėnesį atnaujinate. Naudokite skaičių reikšmes, o ne įvesdami mėnesį. Pavyzdys: sausis = 1, vasaris = 2, kovo = 3. Darau prielaidą, kad nenorite atnaujinti sausio, kad makro išeitų, jei įvesties dėžutėje bus įrašytas 1 (nebent jis būtų atnaujintas nuo gruodžio, tada galime pakeisti ).

Tikiuosi tai padės.

 Sub Update_Month () Dim atsakymas Kaip variantas Dim jj = 3 answer = InputBox („Kas mėnesį atnaujinate?“ & VbCrLf & _ „Ex: sausio = 1, vasario = 2, kovo = 3 ir tt“) Pasirinkite atvejo atsakymą 1 atvejis Išeiti iš 2 atvejo J = 3 - 6 intervalas ("B" ir j) = intervalas ("A" ir j) Kitas j 3 atvejis j = 3 - 6 diapazonas ("C" ir j) = intervalas ( "B" ir j) Kitas j 4 atvejis J = 3 - 6 diapazonas ("D" ir j) = intervalas ("C" ir j) Kitas j 5 atvejis j = 3 - 6 diapazonas ("E" ir j ) = Diapazonas ("D" ir j) Kitas j Byla 6 J = 3 - 6 Diapazonas ("F" ir j) = Diapazonas ("E" ir j) Kitas j Byla 7 J = 3 - 6 intervalas (" G "& j) = Diapazonas (" F "ir j) Kitas j Byla 8 J = 3 - 6 Diapazonas (" H "ir j) = Diapazonas (" G "ir j) Kitas j Byla 9 J = 3 - 6 Diapazonas ("I" ir j) = Diapazonas ("H" ir j) Kitas j Byla 10 J = 3 - 6 Diapazonas ("J" ir j) = Diapazonas ("I" ir j) Kitas j Byla 11 j = 3 iki 6 intervalas ("K" ir j) = intervalas ("J" ir j) Kitas j Byla 12 J = 3 - 6 intervalas ("L" ir j) = intervalas ("K" ir j) Kitas j Pabaiga Pasirinkite Pabaiga 

Prisimink tai

Ačiū WutUp WutUp už šį patarimą forume]

Ankstesnis Straipsnis Kitas Straipsnis

Geriausi Patarimai