Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2252|回复: 3

[讨论]再问批量连接Email地址用数组方法解决出现的问题

[复制链接]
发表于 2008-1-15 11:22 | 显示全部楼层 |阅读模式
<p>1月12日兰版已用数组解决,但本人天生爱钻牛角尖,下面是我的解法,但在最后却出错了,苦思瞑想也不能解决。</p><p>Sub 串连邮箱5()<br/>Dim M, N As Long<br/>Dim arr, arr1(), arr2()<br/>arr = Application.Transpose(Range("a2:a" &amp; Range("a65536").End(xlUp).Row))<br/>For N = 1 To UBound(arr)<br/>M = M + 1<br/>ReDim Preserve arr1(1 To M)<br/>arr1(M) = Application.Index(arr, N)<br/>If M = 20 Or N = UBound(arr) Then<br/>x = x + 1<br/>ReDim Preserve arr2(1 To x)<br/>arr2(x) = Join(arr1, ",")<br/>Erase arr1<br/>M = 0<br/>GoTo 100<br/>End If<br/>100:<br/>Next N<br/>Range("c2").Resize(x, 1) = Application.Transpose(arr2)&nbsp; '就是这句出错,说什么类型不匹配。<br/>End Sub</p>
[此贴子已经被作者于2008-1-15 11:22:42编辑过]
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2008-1-15 11:34 | 显示全部楼层
回复

使用道具 举报

发表于 2008-1-15 13:29 | 显示全部楼层

代码没有错,是transpose转置的对象好象有字符个数限制,你把A列改字一个字母试试.
回复

使用道具 举报

 楼主| 发表于 2008-1-15 15:45 | 显示全部楼层

<p>兰版说的没错,我试过了转置函数最多只能有255个字符,多了就会报错。我只能这样改了:</p><p>Sub 串连邮箱5()<br/>Dim M, N As Long<br/>Dim arr, arr1(), arr2()<br/>t = Timer<br/>arr = Application.Transpose(Range("a2:a" &amp; Range("a65536").End(xlUp).Row))<br/>For N = 1 To UBound(arr)<br/>M = M + 1<br/>ReDim Preserve arr1(1 To M)<br/>arr1(M) = Application.Index(arr, N)<br/>If M = 20 Or N = UBound(arr) Then<br/>x = x + 1<br/>ReDim Preserve arr2(1 To x)<br/>arr2(x) = Join(arr1, ",")<br/>Erase arr1<br/>M = 0<br/>GoTo 100<br/>End If<br/>100:<br/>Next N<br/>Range("d2").Resize(1, x) = arr2<br/>Range("d2").Resize(1, x).Copy<br/>Range("C2").PasteSpecial Paste:=xlPasteValues, Transpose:=True<br/>Range("d2").Resize(1, x) = ""<br/>Application.CutCopyMode = False<br/>Range("c2").Select<br/>MsgBox Timer - t<br/>End Sub</p><p>原来还想让速度更快一些,这样还是比兰版的慢了许多。</p>
[此贴子已经被作者于2008-1-15 16:23:08编辑过]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-6-26 09:11 , Processed in 0.255283 second(s), 3 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表