Yahoo 知識+ 將於 2021 年 5 月 4 日 (美國東岸時間) 停止服務,而 Yahoo 知識+ 網站現已轉為僅限瀏覽模式。其他 Yahoo 資產或服務,或你的 Yahoo 帳戶將不會有任何變更。你可以在此服務中心網頁進一步了解 Yahoo 知識+ 停止服務的事宜,以及了解如何下載你的資料。

? 發問於 電腦與網際網路軟體 · 9 年前

如何使用EXCEL VBA 讓煩椱多筆資料建檔

如何使用EXCEL VBA 讓煩椱多筆資料建檔.讓工作快速又輕鬆完成

使用一般的函數是乎不夠.我經常為了輸入眾多資料搞得亂七八糟.眼花撩亂

懇請VBA 高手幫幫忙!感謝~~!

http://www.funp.net/841339

更新:

修正.請下載下列位置

http://www.funp.net/43091

更新 2:

哇~幾行語法.就可以呈現想要的模式.........讚讚讚!

太棒了

請教 V大為什麼關閉excel時卻出現

"圖片太大.超出的部分將被截去"的訊息方塊

怪怪沒圖片呀!?

另外檔案類型需要存成二進為活頁簿???

我的程度太差了~~~不懂!

感謝大大熱心幫忙~

1 個解答

評分
  • ?
    Lv 7
    9 年前
    最愛解答

    請參考

    http://www.funp.net/444977

    2012-03-19 16:13:05 補充:

    擷取資料

    Sub Selectdata()

    Dim f, r, i, t

    With Sheets(1).[3:3]

    Set f = .Find(Sheets(2).[D3], lookat:=xlWhole)

    If Not f Is Nothing Then

    f = f.Column

    Else

    Exit Sub

    End If

    End With

    Sheets(2).[B11].Resize(65536, 5).ClearContents

    r = 11

    For t = 1 To 2

    If t = 2 Then f = f + 2

    For i = 6 To Sheets(1).Cells(65536, f).End(xlUp).Row

    Sheets(2).Cells(r, 2) = Sheets(2).[D3]

    Sheets(2).Cells(r, 3) = Sheets(1).Cells(4, f)

    Sheets(2).Cells(r, 4) = Sheets(1).Cells(i, f)

    Sheets(2).Cells(r, 5) = Sheets(1).Cells(i, f + 1)

    Sheets(2).Cells(r, 6) = Sheets(2).Cells(7, 4)

    r = r + 1

    Next i

    Next t

    End Sub

    資料歸檔

    Sub colldat()

    Dim x, r, i

    Application.ScreenUpdating = False

    x = Sheets(2).[B65536].End(xlUp).Row

    If x < 11 Then Exit Sub

    r = Sheets(3).[A65536].End(xlUp).Row + 1

    For i = 11 To [B65536].End(xlUp).Row

    If Sheets(2).Cells(i, 2) <> "" Then

    Sheets(3).Rows(r - 1).Copy

    Sheets(3).Rows(r).PasteSpecial Paste:=xlPasteFormats

    Application.CutCopyMode = False

    Sheets(3).Cells(r, 1) = Sheets(2).Cells(i, 2)

    Sheets(3).Cells(r, 2) = Sheets(2).Cells(4, 4)

    Sheets(3).Cells(r, 3) = Sheets(2).Cells(i, 3)

    Sheets(3).Cells(r, 4) = Sheets(2).Cells(i, 4)

    Sheets(3).Cells(r, 5) = Sheets(2).Cells(i, 5)

    Sheets(3).Cells(r, 6) = Sheets(2).Cells(5, 4)

    Sheets(3).Cells(r, 7) = Sheets(2).Cells(6, 4)

    Sheets(3).Cells(r, 8) = Sheets(2).Cells(i, 6)

    r = r + 1

    End If

    Next i

    MsgBox ("DONE......")

    End Sub

    修改了一下檔案...

    http://www.funp.net/539307

    2007 如含有巨集,須存為含巨集檔案(xlsm) 或 二進位檔案格式

    xlsx 無法存巨集檔案...

還有問題嗎?立即提問即可得到解答。