Visual_Basic 板


LINE

這套方式也算拼拼湊湊出來 可能會有些微不正確 但如對於新手或許是個比較快速的一個範例 因為寫陣列不難,但要把陣列貼上cell 實在很難>.< 以下為陣列貼上工作表儲存格cell之辦法 1. (1維陣列,所有列貼上某起始格,自動調整大小,cell為向下匯入) Sheets("sheet1").[A1].Resize(UBound(陣列名)) =Application.Transpose(陣列名) 此種轉置貼上有65536筆上限 假設陣列內的資料是 1 3 5 顯示為 1 3 5 2. (1維陣列,從某起始格,朝向右邊貼上,自動調整大小,cell為向右匯入) Sheets("工作表1").[A1].Resize(1,UBound(陣列名,1) +1) = 陣列名 假設陣列內的資料是 1 3 5 顯示為 1 3 5 3. (2維陣列,欄為不固定) #陣列設為0~最後一欄,將相同範圍貼至儲存格 Sheets("sh1").[A1].Resize(UBound(陣列名,1) +1,UBound(陣列名,2) +1) = 陣列名 假設陣列內的資料是 1 2 3 4 5 6 顯示為 1 2 3 4 5 6 4. (2維陣列,欄為固定) #陣列假設0~2列 為0~4欄,貼至儲存格1~5欄 Sheets("sheet1").range("a1").Resize(UBound(陣列名)+1, 5) = 陣列名 假設陣列內的資料是 1 2 3 4 5 6 7 8 9 0 a b c d e 顯示為 1 2 3 4 5 6 7 8 9 0 a b c d e 也可以寫成 Sheets("sheet1").range("a1").Resize(3, 5) = 陣列名 [請注意以上陣列 UBound(陣列名)是否需要+1 ] 尤其resiz後面用的數字,"並不是"陣列的欄列,而是要貼上儲存格的欄列, 因為陣列是從0開始算 儲存格都用1開始算,請注意 另外也可以將陣列設為 redim ar(1 to 5)搭配儲存格欄列號 或者一開始於最上方寫入 Option base 1 將所有陣列索引值下限的預設值改成 1 這四條方法 我找到外國網站才補齊= = 為了這四行,我花了快20小時 XD 還有靠office板的s大大才得以學會 也歡迎大大一起揪錯 感恩 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.158.244
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Visual_Basic/M.1485488105.A.DB6.html
1F:推 marki: 謝謝 01/28 10:03
2F:推 nicegigi: 推推 03/11 21:50
原先第二項是 Sheets("工作表1").[A1].Resize(1,UBound(陣列名,2) +1) = 陣列名 改成 Sheets("工作表1").[A1].Resize(1,UBound(陣列名,1) +1) = 陣列名 ※ 編輯: waiter337 (36.237.149.168 臺灣), 10/17/2020 09:02:15 補充一下新進展(資料在國外找到的) 2021/4/21 二維陣列 取出 任一整欄所有資料 或 任一整列所有資料 貼上工作表的方法 (原先的方式只能用迴圈逐個篩出,但有人找到可以用index的方式幫助快速取得) 假設ar陣列內的資料是 1 2 3 4 5 6 單取陣列第一橫列所有資料的方法 [A1].Resize(2, 1) = Application.Transpose(Application.Index(ar, 1, 0)) 2 <--這個數字自行調整成你想要貼上的範圍大小,以下例子皆是 顯示為 1 2 第二橫列資料全部取出 [A1].Resize(2, 1) = Application.Transpose(Application.Index(ar, 2, 0)) 顯示為 3 4 第一直欄資料全部取出 [A1].Resize(3, 1) = Application.Index(ar, 0, 1) 顯示為 1 3 5 第二直欄資料全部取出 [A1].Resize(3, 1) = Application.Index(ar, 0, 2) 顯示為 2 4 6 追加一項 第二直欄資料全部取出放入另一個陣列br br = Application.Index(ar, 0, 2) br陣列顯示為 2 4 6 ※ 編輯: waiter337 (36.236.165.70 臺灣), 04/22/2021 23:04:58 waiter337:轉錄至看板 Office 04/22 23:05 追加另外一項 如果想要把儲存格上的資料 貼到陣列 並成為二維陣列 或者 一維陣列 的方式 舉例: 三個字 "a", "b", "c" 分別位於 range("a1:a3") 想放入陣列 通常的作法是 ar = range("A1:A3") 會顯示為 ar(1,1) 為"a" ar(2,1) 為"b" ar(3,1) 為"c" 由於儲存格為2維陣列 轉換到陣列中 也是二維陣列 另問 是否有方式直接轉為一維陣列? 可用以下方法 ar = Application.Transpose(Range("A1:A3")) 會顯示為 ar(1) 為"a" ar(2) 為"b" ar(3) 為"c"_ ※ 編輯: waiter337 (111.242.196.188 臺灣), 08/03/2021 15:35:56 ※ 編輯: waiter337 (218.166.192.86 臺灣), 05/21/2022 06:50:28







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP