新问题-无效字符
好的,在阅读了帮助文件后,我明白了什么是无效字符以及如何避免它们,但显然我违反了这个规则,我找不到它在哪里。我收到一个编译错误“无效字符”,它发生在显示编译代码的jibberish字符串中,当错误弹出时,但对我来说,我无法找到问题所在。是否有不允许的字符列表,我可以逐个搜索和检查,看看我是否犯了错字或其他错误?
如果我不知道从哪里开始,我如何解决这个问题?
**** Hidden Message ***** Josh,
发布一些代码,以便我们为您指明正确的方向 根据您正在做的事情和运行所需的其他内容,使用F8在调试模式下进行调试。
哈哈...见鬼。F8的第一次点击产生了相同的结果。
让我问马特他是否同意我分享代码,因为我正在修补的是他的代码。 在 Matt 的许可下:
Option Explicit
Private Const strDefaultPath = "S:\Jobs\2008\"
Private Const strDWTPath = "S:\Drafting\Templates\Drawing Templates\"
Public strNewDwgPath As String
Public strTB As String
Public intSDIMode As Integer
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub cmdOK_Click()
If CreateJob.Value = True Then
If CheckFoldersExistance(strDefaultPath & txtFolderName.Text) = True Then
MsgBox "The project '" & TitleCase(txtFolderName.Text) & "' already exists!Please enter a different name!", vbCritical + vbOKOnly, AppTitle
frmMain.txtFolderName.Text = ""
MultiPage1.Value = 0
Exit Sub
End If
If txtFolderName"" Then
intSDIMode = ThisDrawing.GetVariable("SDI")
If intSDIMode = 1 Then
ThisDrawing.SetVariable "SDI", 0
CreateProject
CreateDrawings
ThisDrawing.SetVariable "SDI", intSDIMode
Else
CreateProject
CreateDrawings
End If
MsgBox "Project setup complete!", vbInformation + vbOKOnly, AppTitle
Unload Me
Else
MsgBox "You didn't enter a folder name.Please enter a valid folder name before continuing!", vbCritical + vbOKOnly, AppTitle
End If
ElseIf ExistJob.Value = True Then
If CheckFoldersExistance(strDefaultPath & txtExistFolder.Text) = False Then
MsgBox "The project '" & TitleCase(txtExistFolder.Text) & "' does not exist!Please enter a different name!", vbCritical + vbOKOnly, AppTitle
frmMain.txtExistFolder.Text = ""
MultiPage1.Value = 0
Exit Sub
End If
If txtExistFolder"" Then
intSDIMode = ThisDrawing.GetVariable("SDI")
If intSDIMode = 1 Then
ThisDrawing.SetVariable "SDI", 0
InsertProject
CreateDrawings
ThisDrawing.SetVariable "SDI", intSDIMode
Else
InsertProject
CreateDrawings
End If
MsgBox "Project setup complete!", vbInformation + vbOKOnly, AppTitle
Unload Me
Else
MsgBox "You didn't enter a folder name.Please enter a valid folder name before continuing!", vbCritical + vbOKOnly, AppTitle
End If
End If
End Sub
Private Sub CreateProject()
Dim strProjectPath As String
strProjectPath = strDefaultPath & TitleCase(txtFolderName.Text) & "\"
If chkFolder1.Value = True Then
CreateFolder strProjectPath & "Drawings" & "\"
strNewDwgPath = strProjectPath & "Drawings" & "\"
End If
If chkFolder2.Value = True Then CreateFolder strProjectPath & "Calculations" & "\"
If chkFolder3.Value = True Then CreateFolder strProjectPath & "Pictures" & "\"
If chkFolder4.Value = True Then CreateFolder strProjectPath & "Correspondence" & "\"
If chkFolder5.Value = True Then CreateFolder strProjectPath & "Email" & "\"
End Sub
Private Sub InsertProject()
Dim strProjectPath As String
strProjectPath = strDefaultPath & TitleCase(txtExistFolder.Text) & "\"
If chkFolder1.Value = True Then
CreateFolder strProjectPath & "Drawings" & "\"
strNewDwgPath = strProjectPath & "Drawings" & "\"
End If
If chkFolder2.Value = True Then CreateFolder strProjectPath & "Calculations" & "\"
If chkFolder3.Value = True Then CreateFolder strProjectPath & "Pictures" & "\"
If chkFolder4.Value = True Then CreateFolder strProjectPath & "Correspondence" & "\"
If chkFolder5.Value = True Then CreateFolder strProjectPath & "Email" & "\"
End Sub
Private Sub CreateDrawings()
Dim fso As FileSystemObject
Dim objUtil As Object
Dim varPnt As Variant
Dim dblX As Double
Dim dblAngle As Double
Dim objLayout As AcadLayout
dblAngle = CDbl(0 / 180 * (Atn(1) * 4))
Set objUtil = ThisDrawing.Utility
objUtil.CreateTypedArray varPnt, vbDouble, 0#, 0#, 0#
dblX = CDbl(1#)
Set fso = New FileSystemObject
fso.CopyFile strDWTPath & cboTB.Text & ".dwg", strNewDwgPath & cboTB.Text & ".dwg", True
strTB = cboTB.Text
If chkDwg1.Value = True Then
fso.CopyFile strDWTPath & "C-01.dwt", strNewDwgPath & "C-01.dwg", True
Application.Documents.Open strNewDwgPath & "C-01.dwg"
For Each objLayout In ThisDrawing.Layouts
If objLayout.Name"Model" Then
ThisDrawing.ActiveLayout = ThisDrawing.Layouts(objLayout.Name)
ThisDrawing.PaperSpace.AttachExternalReference strNewDwgPath & strTB & ".dwg", strTB, varPnt, dblX, dblX, dblX, dblAngle, True
End If
Next objLayout
Application.ActiveDocument.Close True
End If
If chkDwg2.Value = True Then
fso.CopyFile strDWTPath & "S-01.dwt", strNewDwgPath & "S-01.dwg", True
Application.Documents.Open strNewDwgPath & "S-01.dwg"
For Each objLayout In ThisDrawing.Layouts
If objLayout.Name"Model" Then
ThisDrawing.ActiveLayout = ThisDrawing.Layouts(objLayout.Name)
ThisDrawing.PaperSpace.AttachExternalReference strNewDwgPath & strTB & ".dwg", strTB, varPnt, dblX, dblX, dblX, dblAngle, True
End If
Next objLayout
Application.ActiveDocument.Close True
End If
If chkDwg3.Value = True Then
fso.CopyFile strDWTPath & "S-02.dwt", strNewDwgPath & "S-02.dwg", True
Application.Documents.Open strNewDwgPath & "S-02.dwg"
For Each objLayout In ThisDrawing.Layouts
If objLayout.Name"Model" Then
ThisDrawing.ActiveLayout = ThisDrawing.Layouts(objLayout.Name)
ThisDrawing.PaperSpace.AttachExternalReference strNewDwgPath & strTB & ".dwg", strTB, varPnt, dblX, dblX, dblX, dblAngle, True
End If
Next objLayout
Application.ActiveDocument.Close True
End If
If chkDwg4.Value = True Then
fso.CopyFile strDWTPath & "A-01.dwt", strNewDwgPath & "A-01.dwg", True
Application.Documents.Open strNewDwgPath & "A-01.dwg"
For Each objLayout In ThisDrawing.Layouts
If objLayout.Name"Model" Then
ThisDrawing.ActiveLayout = ThisDrawing.Layouts(objLayout.Name)
ThisDrawing.PaperSpace.AttachExternalReference strNewDwgPath & strTB & ".dwg", strTB, varPnt, dblX, dblX, dblX, dblAngle, True
End If
Next objLayout
Application.ActiveDocument.Close True
End If
Set fso = Nothing
End Sub
Private Function CreateFolder(sFolder As String) As String
Dim s As String
On Error GoTo ErrorHandler
s = GetPathOnly(sFolder)
If Dir(s, vbDirectory) = "" Then
s = CreateFolder(s)
MkDir s
End If
CreateFolder = sFolder
Exit Function
ErrorHandler:
Exit Function
End Function
Private Function GetPathOnly(sPath As String) As String
GetPathOnly = Left(sPath, InStrRev(sPath, "\", Len(sPath)) - 1)
End Function
Private Sub MultiPage1_Change()
End Sub
Private Sub UserForm_Initialize()
MultiPage1.Value = 0
With cboTB
.AddItem "X-TB-CASE"
.AddItem "X-TB-MI-Swaco"
.AddItem "X-TB-ToddBroussard"
.AddItem "X-TB-RogerMcChargue"
.ListIndex = 0
End With
End Sub
第一个文本框 = txtFolderName
第二个文本框 = txtExistFolder
First OptionButton = CreateJob
Second OptionButton = ExistJob
(edit... 更新了文本框名称...忘记了“txt”)
^ ^ ^ ^ ^
ummmm??!? 嘿
是的。
我也是这么想的。o.0
呵呵呵...我觉得这条线是你的问题! seç& * else?ö äru 犯 错。。
哈哈,那是什么地方? 模块 1
页:
[1]
2