送心意

成蹊老师

职称注册会计师,初级会计师,税务师,中级会计师

2019-12-04 21:37

点击【开发工具】-【Visual Basic】或者Alt+F11的快捷键进入VBE编辑界面。
插入一个新的模块
粘贴下列代码在模块中:

Sub CFGZB()

    Dim myRange As Variant

    Dim myArray

    Dim titleRange As Range

    Dim title As String

    Dim columnNum As Integer

    myRange = Application.InputBox(prompt:=请选择标题行:, Type:=8)

    myArray = WorksheetFunction.Transpose(myRange)

    Set titleRange = Application.InputBox(prompt:=请选择拆分的表头,必须是第一行,且为一个单元格,如:“姓名”, Type:=8)

    title = titleRange.Value

    columnNum = titleRange.Column

    Application.ScreenUpdating = False

    Application.DisplayAlerts = False

    Dim i&, Myr&, Arr, num&

    Dim d, k

    For i = Sheets.Count To 1 Step -1

        If Sheets(i).Name <> 数据源 Then

            Sheets(i).Delete

        End If

    Next i

    Set d = CreateObject(Scripting.Dictionary)

    Myr = Worksheets(数据源).UsedRange.Rows.Count

    Arr = Worksheets(数据源).Range(Cells(2, columnNum), Cells(Myr, columnNum))

    For i = 1 To UBound(Arr)

        d(Arr(i, 1)) = 

    Next

    k = d.keys

    For i = 0 To UBound(k)

        Set conn = CreateObject(adodb.connection)

        conn.Open provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source= & ThisWorkbook.FullName

        Sql = select * from [数据源$] where  & title &  =  & k(i) & 

        Worksheets.Add after:=Sheets(Sheets.Count)

        With ActiveSheet

            .Name = k(i)

            For num = 1 To UBound(myArray)

                .Cells(1, num) = myArray(num, 1)

            Next num

            .Range(A2).CopyFromRecordset conn.Execute(Sql)

        End With

        Sheets(1).Select

        Sheets(1).Cells.Select

        Selection.Copy

        Worksheets(Sheets.Count).Activate

        ActiveSheet.Cells.Select

        Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _

                               SkipBlanks:=False, Transpose:=False

        Application.CutCopyMode = False

    Next i

    conn.Close

    Set conn = Nothing

    Application.DisplayAlerts = True

    Application.ScreenUpdating = True

End Sub
插入一个控件按钮,并指定宏到刚才插入的模块代码。
点击插入的按钮控件,根据提示选择标题行和要拆分的列字段

上传图片  
相关问题讨论
你好,如果是在职职工,签订劳动合同的,可以作为工资薪金直接发放。如果不是在职职工,不参加社会保险的,或者说是兼职的,那就要作为劳务报酬,需要开发票
2020-04-26 06:36:07
点击【开发工具】-【Visual Basic】或者Alt+F11的快捷键进入VBE编辑界面。 插入一个新的模块 粘贴下列代码在模块中: Sub CFGZB() Dim myRange As Variant Dim myArray Dim titleRange As Range Dim title As String Dim columnNum As Integer myRange = Application.InputBox(prompt:=请选择标题行:, Type:=8) myArray = WorksheetFunction.Transpose(myRange) Set titleRange = Application.InputBox(prompt:=请选择拆分的表头,必须是第一行,且为一个单元格,如:“姓名”, Type:=8) title = titleRange.Value columnNum = titleRange.Column Application.ScreenUpdating = False Application.DisplayAlerts = False Dim i&amp;, Myr&amp;, Arr, num&amp; Dim d, k For i = Sheets.Count To 1 Step -1 If Sheets(i).Name &lt;&gt; 数据源 Then Sheets(i).Delete End If Next i Set d = CreateObject(Scripting.Dictionary) Myr = Worksheets(数据源).UsedRange.Rows.Count Arr = Worksheets(数据源).Range(Cells(2, columnNum), Cells(Myr, columnNum)) For i = 1 To UBound(Arr) d(Arr(i, 1)) = Next k = d.keys For i = 0 To UBound(k) Set conn = CreateObject(adodb.connection) conn.Open provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source= &amp; ThisWorkbook.FullName Sql = select * from [数据源$] where &amp; title &amp; = &amp; k(i) &amp; Worksheets.Add after:=Sheets(Sheets.Count) With ActiveSheet .Name = k(i) For num = 1 To UBound(myArray) .Cells(1, num) = myArray(num, 1) Next num .Range(A2).CopyFromRecordset conn.Execute(Sql) End With Sheets(1).Select Sheets(1).Cells.Select Selection.Copy Worksheets(Sheets.Count).Activate ActiveSheet.Cells.Select Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False Next i conn.Close Set conn = Nothing Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub 插入一个控件按钮,并指定宏到刚才插入的模块代码。 点击插入的按钮控件,根据提示选择标题行和要拆分的列字段
2019-12-04 21:37:38
这种情况,通过财务人员与业务的稽核关系管理,仔细审核资金的进出,完全可以避免。
2019-07-13 10:52:37
您好,一般编制工资表,与工资一起发比较好。
2017-03-13 21:57:49
你好, 开票内容可以是购入婴儿套装
2020-06-02 11:40:59
还没有符合您的答案?立即在线咨询老师 免费咨询老师
精选问题
  • 老师晚上好!我生产型企业,因为园区就一个变压器,我

    您好,您稍等,我给您编辑

  • 老师,固定资产总额400万,汇算清缴前能有200多万的

    老师正在计算中,请同学耐心等待哦

  • 老师,我这边有一个停止运营很久的企业要进行股权

    1. 减资可以直接冲减所有者权益,但需履行股东会决议、通知债权人、公告等法定程序,不能仅内部操作。 2. 低价转让不能只附说明,税务机关可能核定收入;所有者权益为零也不一定能零转让,若有账外资产或增值,仍会被核定。 3. 评估书是计税依据,取得后需: 作为股权转让价格公允性证明提交税务; 完善股权转让协议、股东会决议等文件; 办理税务申报和工商变更。 4. 针对该表调整: 优先减资,直接冲减实收资本; 大额应收款可计提坏账核销,降低净资产; 应付款若无需支付,会增加利润,需谨慎处理

  • 请问老师,出口合同签的是美元,结果打款给的是欧元,

    你现在不能直接退,必须让对方补齐以下文件: 1. 让对方出具正式书面指令(必须!) 内容要点: 原付款人名称 原付款账号、银行 说明原账户已注销 / 无法使用 明确新收款账户(账户名、账号、开户行、SWIFT) 强调:新账户所有权仍属于原付款客户 必须有:签字 %2B 盖章 最好做公证 / 使馆认证(金额大一定要) 2. 让对方提供原账户注销证明 银行销户证明 或银行通知函 3. 你们内部要做: 把合同、发票、对方付款水单、对方改账户指令、销户证明 一并交给你的开户行国际业务部审核。 让银行先确认可以退,再操作。 三、最简单判断标准(你直接照这个卡) 只要满足下面任意一条,绝对不能退: 对方只** / 邮件口头说,不给盖章文件 新账户户名和原付款人不一致 银行看了材料说有风险 / 不建议退 对方催得很急,一直催你 “先退再说”

  • 请问老师,公司在景区租了一栋楼开酒店,然后请自来

    同学,你好 是可以的,增加经营范围就行

相似问题
举报
取消
确定
请完成实名认证

应网络实名制要求,完成实名认证后才可以发表文章视频等内容,以保护账号安全。 (点击去认证)

取消
确定
加载中...