Excel - Kopier data ved siden av en celle og lim den inn under

Utgave

Jeg har data ordnet som nedenfor:

 celle | A | B | C ------------------------------------------------- --- 1 | Hei | Hei | Morgen 2 | Hjelp | Vennligst | 3 | Takk | Se deg | Ha det 

Jeg må gjøre disse dataene til dette formatet

 celle | A | B | C ------------------------------------------------- - 1 | Hei | Hei | Morgen 2 | | Morgen | ---------------------------------------------- 3 | Hjelp | Vennligst | ---------------------------------------------- 4 | Takk | Se deg | Bye 5 | | Bye | ---------------------------------------------- 

Jeg skjønner at noen forhold må ta hensyn til:

For å sjekke om C1 inneholder data eller ikke,

  • 1) Hvis ja, kopier dataene til celle B2 (en celle relativt til venstre og under C1)

Understreket deretter kontinuerlig under celle B2

  • 2) Hvis nei, understreket og fortsett med neste rad
  • 3) Fortsett til den siste cellen som inneholder data

Løsning

  • Først kopier dataene i ark2.
  • Prøv deretter makro-testen

 Sub-test () Dim j Som helhet, k Som helhetark (ark1). Aktiver j = Range ("A1"). End (xlDown) .Row For k = j Til 1 Trinn -1 Hvis celler (k, C ")" "Så Hvis k = 1 deretter celler (k + 1, " A "). HeleRow.Insert Cells (k, " c "). Klippceller (k + 1, " B ") celler, "A"). EntireRow.FormulaArray = "'-----------------" Avslutt Sub End Hvis Celler (k, "A"). HeleRow.Insert Cells (k + 1, "C"). Klippceller (k + 2, "B") Celler (k + 3, "A"). TotalRow.FormulaArray = "'--------------- - "Else celler (k, " A "). TotalRow.Insert Cells (k + 2, " a ") .HeleRow.FormulaArray =" '----------------- "Slutt hvis neste k End Sub Sub Undo () Worksheets (" sheet1 "). Cells.Clear Worksheets (" sheet2 ") .Celler.Copy Worksheets (" sheet1 ") .Range (" A1 ") End Sub 

Noter det

Takk til venkat1926 for dette tipset på forumet.

Forrige Artikkel Neste Artikkel

Beste Tips