Excel - kopējiet datus blakus šūnai un ielīmējiet to tālāk

Izdevums

Man ir šādi dati:

 šūnas | A | B | C ------------------------------------------------- --- 1 | Sveiki | Sveiki | Rīts 2 | Palīdzība Lūdzu, 3 | Paldies Jūs redzēsiet Bye 

man ir nepieciešams, lai šie dati kļūtu par šo formātu

 šūnas | A | B | C ------------------------------------------------- - 1 | Sveiki | Sveiki | Rīts 2 | | Rīts | ---------------------------------------------- 3 | Palīdzība Lūdzu, ---------------------------------------------- 4 | Paldies Jūs redzēsiet Bye 5 | | Bye | ---------------------------------------------- 

Es saprotu, ka dažos apstākļos jāņem vērā:

Lai pārbaudītu, vai C1 satur datus, vai ne,

  • 1) ja jā, kopējiet datus šūnā B2 (šūna relatīvi pa kreisi un zem C1)

Pēc tam nepārtraukti pasvītrojiet zem B2 šūnas

  • 2) ja nē, pasvītrojiet un turpiniet ar nākamo rindu
  • 3) turpināt līdz pēdējai šūnai, kurā ir dati

Risinājums

  • Vispirms kopējiet datus lapā2.
  • Tad mēģiniet makro "testu"

 Sub tests () Dim j Kā Integer, k Kā Integer darblapas ("sheet1") Aktivizēt j = Range ("A1"). Beigas (xlDown). Rinda k = j uz 1 Step -1 Ja šūnas (k, " C ")" "Tad, ja k = 1 Tad šūnas (k + 1, " A "). EntireRow.Insert šūnas (k, " c "). Izgrieztās šūnas (k + 1, " B ") šūnas (k + 2, "A"). EntireRow.FormulaArray = "'-----------------" Iziet Sub End Ja šūnas (k, "A"). EntireRow.Insert Cells (k + 1, "C"). Izgrieztās šūnas (k + 2, "B") Šūnas (k + 3, "A"). EntireRow.FormulaArray = "'--------------- - "Else Cells (k, " A "). EntireRow.Insert Cells (k + 2, " a "). EntireRow.FormulaArray =" '----------------- "Beigt, ja nākamais k Beigt sub Subdo undo () darblapas (" sheet1 "). Cells.Clear darblapas (" sheet2 "). Cells.Copy darblapas (" sheet1 "). Range (" A1 ") beigas 

Pieraksti to

Pateicoties venkat1926 par šo padomu forumā.

Iepriekšējais Raksts Nākamais Raksts

Top Padomi