Excel精英培训网

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

[基本解决]用代码写代码的问题?

[复制链接]
发表于 2008-2-21 00:26 | 显示全部楼层 |阅读模式

在网上找到一段代码,可以将当前文件夹下的文本文件中事先写好的代码复制到当前文件夹下指定的test.xls文件中,附件如下:

 

mya2EsMp.rar (28.37 KB, 下载次数: 14)

[求助]用代码写代码的问题?

[求助]用代码写代码的问题?

9EWaSO8k.rar

17.79 KB, 下载次数: 7

[求助]用代码写代码的问题?

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2008-2-21 00:28 | 显示全部楼层

主要问题是那个自定义函数和选取文件是获得基础文件名的那个东东没搞明白!

回复

使用道具 举报

发表于 2008-2-21 08:18 | 显示全部楼层

Private Sub 确定_Click()
    If TextBox1.Text <> "" Then
        Application.FileDialog(msoFileDialogOpen).Execute  '如果需打开文件,请执行本句
        Unload Me
    ''''这是将含着程式码的档案code.txt写到test.xls工作簿中的ThisWorkbook模组中
        Workbooks.Open TextBox1.Text
            With ActiveWorkbook
                .RemovePersonalInformation = False '去掉“保存文件时删除个人”提示,不勾选!
                .Sheets.Add Type:=xlExcel4MacroSheet '插入宏表
                .Sheets("Macro1").Range("IU1").FormulaR1C1 = "10" '设定试用总次数
                .Sheets("Macro1").Select
                ActiveWindow.SelectedSheets.Visible = False '隐藏宏表
                .Save  '强制保存
            End With
        Dim strFile As String
        strFile = ThisWorkbook.Path & "\code.txt"
        fileWtheCode objModule(TextBox1, "ThisWorkbook"), strFile
        TextBox1.Text = ""
    Else ''如果文本框为空就不执行
        MsgBox "请输入文件名!", 0 + 64, "雨中漫步提示你"
    End If
End Sub
回复

使用道具 举报

 楼主| 发表于 2008-2-21 08:20 | 显示全部楼层

WHO Cancel HELP ME !?
回复

使用道具 举报

 楼主| 发表于 2008-2-21 13:45 | 显示全部楼层

QUOTE:
以下是引用戏子在2008-2-21 8:18:00的发言:

        fileWtheCode objModule(TextBox1, "ThisWorkbook"), strFile
  

谢谢帮主!不过还是有点出错!

[此贴子已经被作者于2008-2-21 13:45:43编辑过]
回复

使用道具 举报

 楼主| 发表于 2008-2-21 13:52 | 显示全部楼层

老是工作簿名不对,下标越界,黄色部分出错。

    For Each theProject In Application.VBE.VBProjects
'       若找到目标工作簿专案, 则跳出循环
        If theProject.FileName = Workbooks(WbName).FullName Then Exit For

回复

使用道具 举报

发表于 2008-2-21 14:39 | 显示全部楼层

fileWtheCode objModule("7.xls", "ThisWorkbook"), strFile

7.xls???什么意思?
回复

使用道具 举报

发表于 2008-2-21 16:25 | 显示全部楼层

想方法提取TEXTBOX1里的文件名名称就可以了

fileWtheCode objModule("只要文件名.xls", "ThisWorkbook"), strFile

回复

使用道具 举报

 楼主| 发表于 2008-2-21 19:52 | 显示全部楼层

QUOTE:
以下是引用element在2008-2-21 14:39:00的发言:
fileWtheCode objModule("7.xls", "ThisWorkbook"), strFile

7.xls???什么意思?

7.xls是开始调试的时候手动设置的一个文件名!

现在是想通过选择后,利用选择获得的文件名来打开并写入代码!

回复

使用道具 举报

 楼主| 发表于 2008-2-21 19:55 | 显示全部楼层

QUOTE:
以下是引用仔仔在2008-2-21 16:25:00的发言:

想方法提取TEXTBOX1里的文件名名称就可以了

fileWtheCode objModule("只要文件名.xls", "ThisWorkbook"), strFile

那就是提取提取基础文件名,不要路径!

我想把全路径用replace替换掉,却不能用通配符!用*或者%都不行!

 

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-5 23:08 , Processed in 0.289443 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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