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.