乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 求帮忙解决下这个<em>excel</em>的vba代码问题-excel pan.baidu.c

求帮忙解决下这个<em>excel</em>的vba代码问题-excel pan.baidu.c

作者:乔山办公网日期:

返回目录:excel表格制作


能再把你的问题描述清楚点吗?
看起来很简单的嘛,你的公式搞得那么复杂,
你就是要统计某两行之间的某列内的各数字的个数对吗?

代码示例如下,自行修改其中的参数,使其与你窗体的内容对接。

Sub test()
'整体设计思路:分析打印页码字符串,将要打印的页码队列,存入数组。然后通过循环实现逐份打印该队列中的每一页。
Dim f As Integer, s As String, arr, brr, Prr(1 To 10000), jl
f = 2 '打印份数对接变量
s = "1,3-5"   '打印页码对接变量
jl = 0 '要进行打印输出的队列数量初始化
'------------------------开始分析打印页码设定--------------------
arr = Split(s, ",")   '按逗号分拆
For i = 0 To UBound(arr)
    brr = Split(arr(i), "-")  '分析3-6之类e799bee5baa6e997aee7ad94e58685e5aeb9332页码设置
    For j = Val(brr(0)) To Val(brr(UBound(brr)))
        jl = jl + 1
        Prr(jl) = j
    Next j
Next i
For i = 1 To f  '逐份输出
    For j = 1 To jl
        Sheet1.PrintOut Prr(j), Prr(j)  '指定Sheet1发生打印操作
    Next
Next i
End Sub



完整版都是有加密的,

混乱得很呀,里面根本没有A表、B表,能否说清楚点呢。

Option Explicit

Sub 导出()
    Dim OutColArr()
    Dim i, j, m, n
    Dim stSrc As Worksheet, stDes As Worksheet
    Set stSrc = Sheets("数据源")
    Set stDes = Sheets("目标数e799bee5baa6e58685e5aeb9363据")
    m = stSrc.UsedRange.Columns.Count
    n = stDes.UsedRange.Columns.Count
    '1.检查对应
    ReDim OutColArr(1 To n)
    For i = 1 To n
        For j = 1 To m
            If Trim(stDes.Cells(1, i)) = Trim(stSrc.Cells(1, j)) Then
                OutColArr(i) = j
                Exit For
            End If
        Next j
        If OutColArr(i) = 0 Then
            MsgBox "在 数据源 表中没有找到下面的列:" & stDes.Cells(1, i)
            Exit Sub
        End If
    Next i
    '2.开始导出
    Workbooks.Add
    Set stDes = ActiveSheet
    For i = 1 To n
        stSrc.Columns(OutColArr(i)).Copy stDes.Columns(i)
    Next i
    MsgBox "导出完毕。"
End Sub

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网