看板 Office 關於我們 聯絡資訊
軟體:excel 版本:2003 不好意思...我想請問一下問題 這是我從書上抓出來的 =================================== 這是excel的表 a b c d e f g h 編碼 分類 名字 國文 數學 理化 社會 合計 1 78 A 橋本 36 47 54 42 179 2 66 B 高山 41 35 33 73 182 3 24 C 岡田 62 37 35 49 183 4 81 D 平山 43 46 32 64 185 5 58 A 須藤 31 35 35 87 188 6 30 B 加藤 50 34 35 70 189 7 38 C 君島 54 44 45 48 191 8 90 D 村上 37 76 47 32 192 9 6 A 荒川 73 44 40 36 193 10 89 B 丸山 57 42 58 42 199 11 50 C 佐佐木 42 51 47 61 201 12 20 D 大貫 35 42 92 33 202 13 51 A 佐藤 31 32 73 69 205 14 57 B 鈴木 46 39 39 82 206 15 93 C 山口 41 42 76 55 214 ===================================================================== Option Explicit Sub E_Sample023() '測試資料 E_Data01工作表兖 Dim myRng1 As Range Dim myRng2 As Range Dim myRng3 As Range Dim myAr As Variant Dim i As Long myAr = Array(1, 4, 3, 2, 7) '指定轉寫的欄位與順序 With Worksheets Set myRng1 = _ .Item("E_Data01").Range("A1").CurrentRegion '抓取來源範圍 Set myRng2 = .Item("E_Data01").Range("J1:K2") '抓取資料範圍 Set myRng3 = .Add(After:=.Item(.Count)) _ .Range("A1").Resize(, UBound(myAr) + 1) '指定轉寫目標 End With For i = 1 To 5 myRng3.Cells(i).Value = myRng1.Rows(1).Cells(myAr(i - 1)).Value Next '將抓取條件輸入至儲存格範圍內 myRng2.Cells(1, 1) = myRng1.Cells(1, 3) '名字指定欄位 myRng2.Cells(1, 2) = myRng1.Cells(1, 6) '理化 myRng2.Cells(2, 1) = "山*" '指定抓取條件 myRng2.Cells(2, 2) = ">50" myRng1.AdvancedFilter _ Action:=xlFilterCopy, _ CriteriaRange:=myRng2, _ CopyToRange:=myRng3 With myRng1.Parent If .FilterMode Then .ShowAllData End If End With myRng2.Clear '刪除抓取條件 Set myRng1 = Nothing '物件的釋放 Set myRng2 = Nothing Set myRng3 = Nothing End Sub =============================================================================== 不好意思,這個是從書上抓下來的,我看不是很懂@@,想請問一些問題: 1.Set myRng1 = _ .Item("E_Data01").Range("A1").CurrentRegion 他說是抓取來源範圍,但我看不太懂,是抓取性質嗎? 2.Set myRng2 = .Item("E_Data01").Range("J1:K2") 我把J1:K2改掉就整個變了,為什麼要選這個範圍呢?? 3. myRng2.Cells(1, 1) = myRng1.Cells(1, 3) '名字指定欄位 myRng2.Cells(1, 2) = myRng1.Cells(1, 6) '理化 這個是在說相對的位置嗎?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 110.24.248.114
sueadolph:直接回信給你好了orz 04/15 18:01