返回列表 上一主題 發帖

[發問] 資料格式不符

[發問] 資料格式不符

Hi 前輩
我主要想把繁雜的資料 從其他工作表撈進我的資料表對應的工作表中,使用Vlookup並找出欄位B1+C1 ,並且排序最大值再上(由Z->A)
最後Print出來
###############################################
我想詢問另一個問題  從第一行跑到最下一欄Cells時結束到K欄的運算後,會產生一個資料型態不符,不知前輩是否有解
   Cells(1, 1).Select
   For K = 1 To ThisWorkbook.Sheets(1).UsedRange.Rows.Count
    Cells(K, 4) = Cells(K, 3) + Cells(K, 2)
    Next
###############################################
還想另外再詢問
For Each Rng In Sheets(1).Range("a2:a5000")
這個Range("A2:A5000") 這個是否可以改成欄位中有欄填入資料做運算即可
###############################################
最後我有附上附件1!  感謝,麻煩解惑 謝謝

疑問.rar (31.03 KB)

附件1

回復 6# 准提部林


    謝謝!解決了我的問題 感謝!

TOP

With Sheets(1)
  For i = 2 To .UsedRange.Rows.Count
    .Cells(i, 2) = Application.VLookup(.Cells(i, 1), Sheets(2).UsedRange.Columns("A:D"), 4, 0)
    .Cells(i, 3) = Application.VLookup(.Cells(i, 1), Sheets(3).UsedRange.Columns("A:D"), 4, 0)
  Next i
End With

TOP

回復 4# lpk187

Hi
個人學藝不精,想請教
如果說我把Rng改成cells的用法,但是改寫完後卻有資料型態不符的狀況.
還請多多幫忙指教 謝謝

  For i = 2 To Sheets(1).UsedRange.Rows.Count
        Worksheets(1).Cells(i, 2) = Application.VLookup(Worksheets(1).Cells(i, 1), Sheets(2).Range(Cells(2, 1), Cells(Sheets(2).UsedRange.Rows.Count, 4)), 4, 0)
        Worksheets(1).Cells(i, 3) = Application.VLookup(Worksheets(1).Cells(i, 1), Sheets(3).Range(Cells(2, 1), Cells(Sheets(3).UsedRange.Rows.Count, 4)), 4, 0)
  Next

Vlookup.jpg (12.59 KB)

Vlookup.jpg

TOP

回復 3# s13983037


    !@#$@#@@
大哥!之前給你的已經是找最後格了!
從&從開始的& Cells(Rows.Count, 1).End(xlUp).Row就是找最後格了
    Rng.Offset(, 1) = Application.VLookup(Rng, Sheets("115").Range("a2:d" & Cells(Rows.Count, 1).End(xlUp).Row), 4, 0)

TOP

回復 2# lpk187
Hi 你好
For Each Rng In Sheets(1).Range("a2:a" & Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row)
    我目前是想使用Vlookup的功能但是原本的資料選取的範圍事A2:A5000,所以說我想要把他的選取範圍從A2:目前Row使用的最後一個欄為做計算
如果單使用Excel vlookup語法大概是
vlookup(A2,第二個工作表的!A2:D列的最後一格有輸入資料的欄位,4,0)
vlookup(A2,第三個工作表的!A2:D列的最後一格有輸入資料的欄位,4,0)
以上 不知道要如何修改成以上這樣 麻煩指教謝謝

TOP

回復 1# s13983037

你的問題應該是把For Each Rng In Sheets(1).Range("a2:a5000")這列改成下列就可以了,這包括你的第一個問題
    For Each Rng In Sheets(1).Range("a2:a" & Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row)

TOP

        靜思自在 : 【生命在呼吸間】佛陀說:「生命在呼吸間。」人無法管住自己的生命,更無法擋住死期,讓自己永住人間。既然生命去來這麼無常,我們更應該好好地愛惜它、利用它、充實它,讓這無常、寶貴的生命,散發它真善美的光輝,映照出生命真正的價值。
返回列表 上一主題