求高人用vb或者vba在excel里编一个按顺序组合的小程序

求高人用vb或者vba在excel里编一个按顺序组合的小程序,要求是这样运算的:在A有一列数据abcdefg......(数据个数可以自定)在B列有一组数据123456.... 求高人用vb或者vba在excel里编一个按顺序组合的小程序,要求是这样运算的:在A有一列数据 a b c d e f g......(数据个数可以自定)在B列有一组数据1 2 3 4 5 6 .....(数据个数可以自定).要求自动按顺序排列组合,结果为a1 a2 a3 a4 a5 a6 b1 b2 b 3...... 这样,列的个数也要可以自定,有A B C D E F做多要做到六列,因为有的时候用到三列数据按顺序组合有的时候用到四列的数据按数据组合,最多的时候用到六列的数据按数据组合,最后合成的数据个数应该=A列的数据个数*B列数据个数*C列数据个数....,不知道程序能不能解决,希望各位大人帮忙哦,必有重谢!
这位兄弟,access没用过啊,能详细一点吗,谢谢啦
展开
 我来答
匿名用户
2009-07-17
展开全部
楼上的?你是哪位?楼主要有问题,请联返汪羡系我

我是farfamed,要确认的问题是:
1、A列数据形式就是单个字母?B列数据形式就是单个数字?C列呢?D列呢?如果不是,请说一下数据形式,还有它们组合后,每个组合的各个数据之间有没有间隔符?比如a1,是不是紧密连接的?
2、有N列数据,每个组合就是包含N个数据吗?
3、组合后的数据放在哪里?

用VBA写了一个,你先漏拍看看:

Rem 工具-宏-VB编辑器,粘贴如下代码,返回工作表,切换到其他Sheet,再返回到当前Sheet,即开始执行,组合后的数据从第7列开始存储,每列最多存储6万个,数据量大的话,执行过程中,工作表的状态栏是一直跳动着的

Private Sub Worksheet_Activate()
Dim n As Long
a = Range("a1").End(xlDown).Row: If a > 60000 Then a = 1
b = Range("b1").End(xlDown).Row: If b > 60000 Then b = 1
c = Range("c1"陵茄).End(xlDown).Row: If c > 60000 Then c = 1
d = Range("d1").End(xlDown).Row: If d > 60000 Then d = 1
e = Range("e1").End(xlDown).Row: If e > 60000 Then e = 1
f = Range("f1").End(xlDown).Row: If f > 60000 Then f = 1

n = 0: m = 0

For i = 1 To a
For j = 1 To b
For k = 1 To c
For x = 1 To d
For y = 1 To e
For z = 1 To f
DoEvents
n = n + 1
Cells(n, 7 + m) = Cells(i, 1) & Cells(j, 2) & Cells(k, 3) & Cells(x, 4) & Cells(y, 5) & Cells(z, 6)
If n > 60000 Then n = 0: m = m + 1
Next z
Next y
Next x
Next k
Next j
Next i

MsgBox n

End Sub
TableDI
2024-07-18 广告
在上海悉息信息科技有限公司,我们深知Excel在数据处理中的重要作用。在Excel中引用不同工作表(sheet)的数据是常见的操作,这有助于整合和分析跨多个工作表的信息。通过在工作表名称前加上感叹号“!”,您可以轻松地引用其他工作表中的数据... 点击进入详情页
本回答由TableDI提供
semaly
2009-07-14 · TA获得超过469个赞
知道小有建树答主
回答量:1158
采纳率:100%
帮助的人:371万
展开全部
重谢内容是啥?这好象不是太难...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yym6211
2009-07-15 · TA获得超过1159个赞
知道大有可为答主
回答量:895
采纳率:0%
帮助的人:724万
展开全部
发个实际的表到yymhy@163.com
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wys_sans
2009-07-15 · TA获得超过4008个赞
知道大有可为答主
回答量:2474
采纳率:0%
帮助的人:1057万
展开全部
Excel的一个Sheet最多只能存放65535行数据,如果你做六列结果可能会超出存储范围。为啥不用ACCESS来做,存储百万条记录也不在话下。
你只要定义两个表,每个表的字段都一样雹改谨,定义6个字段歼型就行。
tableA & tableB
field1,field2,field3,field4,field5,field6
字段的数据类型自己定义就行源基,然后写个查询语句
select a.* from tableA a,tableB b
这样查询不加任何条件,就是迪加尔乘积,也就刚好对应你需要的排列组合。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-07-17
展开全部
好笑,滑春回答你问题的Farfamed大侠直接用EXCEL的VBA帮你完美的解决了问信岁耐题,你居然以为他用雀悔ACCESS?

哈哈,笑死我了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式