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/cn.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灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP