返回列表 上一主題 發帖

請問如何將資料"剪下"然後向中間的空格向上貼齊呢?

或許也可以採用先清除空白行內的公式, (因為用不到)
再利用 Range的Copy函數依序將公式搬移上來.
這裡請恕不再列出如何找空白行的公式.

With Worksheets("Sheet3")
  .Range("A2:J3").Clear
  .Range("A5:J6").Clear
  .Range("A8:J9").Clear

  .Range("A4:J4").Copy _
      Destination:=.Range("A2")
  .Range("A4:J4").Clear


  .Range("A7:J7").Copy _
      Destination:=.Range("A3")
  .Range("A7:J7").Clear

  .Range("A10:J10").Copy _
      Destination:=.Range("A4")
  .Range("A10:J10").Clear

End With

TOP

本帖最後由 luhpro 於 2010-7-26 00:14 編輯

回復 6# vpower

如果只是單純的要將資料放在一起,
我之前有想到一種方法可以達成.
(因為之前用的方式就不是用公式做的, 所以先提供給你應急用, 至於用公式來達成的方式就煩請其他人提供給你囉)

就是先在某欄最上方訂定一個基數(0 或 1000 皆可),
C1 = 1000
然後利用公式將有資料的那一列依序編號,
C2 = IF(A1="",IF(C1<1000,C1+1000,C1),IF(C1<1000,C1+1,C1-1000+1))
C3 以後直接 下拉即可,(範例中下拉到 C501, 因為 C1並未對應到資料的第一列)
最後再一一抓出來顯示資料即可,
D1 = IF(ROW()>$F$1,"",INDIRECT(CONCATENATE("A",MATCH(ROW(),$C$1C$501,0)-1)))
E1 = IF(ROW()>$F$1,"",INDIRECT(CONCATENATE("B",MATCH(ROW(),$C$1C$501,0)-1)))
D2 與 E2 以後亦直皆下拉即可,,(範例中下拉到 D500, 因為 D1有對應到資料的第一列)

至於要怎樣使用抓出來的資料那就要看你的需求囉.
ask2_a.zip (84.19 KB)

TOP

本帖最後由 luhpro 於 2010-7-27 00:21 編輯

我剛剛想到可以用公式套用我在第 7 篇上所使用的方法,
就是用程式在 "原稿" 的 NOPQRST 等欄分別列出各級學校名稱如 "托兒所"、"小學"...等依次的關鍵字,
再於各欄將每筆資料抓出來依序給予編號,
以上程式如下:

Sub Main()
  Dim iCount As Integer, iCol As Integer, iFrow As Integer, iRow As Integer
  Dim iI As Integer, iJ As Integer
  Dim rC As Range

  With Sheets("原稿")
    With .Range("a1:m1")
      Set rC = .Find("學校", LookIn:=xlValues)
      If Not rC Is Nothing Then
        iCol = rC.Column
      End If
    End With
    iCount = .Cells(Rows.Count, iCol).End(xlUp).Row()

    .Range(Cells(2, 14), Cells(iCount, 20)).Clear

    For iI = 1 To 7
      With .Range(Cells(1, iCol), Cells(iCount, iCol))
        Set rC = .Find(Cells(1, 13 + iI), LookIn:=xlValues)
        If Not rC Is Nothing Then
          iJ = 0
          iFrow = rC.Row
          Do
            iJ = iJ + 1
            iRow = rC.Row
            Cells(iRow, 13 + iI) = iJ
            Set rC = .FindNext(rC)
          Loop While Not rC Is Nothing And rC.Row <> iFrow
        End If
      End With
    Next iI
  End With
End Sub

ask2_a2.zip (75.51 KB)

如此甚至整個 "分類" Sheet 的內容與文字格式等都可以用程式直接產生出來. (只要沒刪到第一列的欄位名稱,應該都不受原稿編修的影響)
因為時間晚了來不及繼續下去這部份就要請你自己做或等我晚上有時間才能做囉.

TOP

        靜思自在 : 能付出愛心就是福,能消除煩惱就是慧。
返回列表 上一主題