程序如下,各位基围虾们帮忙看看哈。
里面所有的变量我都定义过了,Hincd1T和Hincd2T是文本框。
我写得比较乱,以后一定会改进的,群虾们帮着出出主意吧Private Sub ExcelB_Click()
   
If (Trim(Hincd1T.Text) <> vbNullString) And (Trim(Hincd2T.Text) <> vbNullString) Then
      On Error Resume Next
      CommonDialog1.ShowSave
      If Err.Number = 32755 Then
      Err.Clear
      Exit Sub
   End If   myFilename = CommonDialog1.FileName
   myFile = Dir(myFilename)
   
   If Len(myFile) = 0 Then
   Else
     If MsgBox(myFile & " は既に存在します。" & vbCrLf & "置換しますか?", vbYesNo, "情報") = vbYes Then
        Name myFilename As myFilename
    
         If Err.Number Then
            MsgBox "指定されたファイルは使用中です。", vbInformation, "information"
            Err.Clear
            Exit Sub
          End If
    Else
       WaitL.Caption = vbNullString
       Exit Sub
    End If
  End If
   
   WaitL.Caption = "loading......"
   WaitL.Refresh
   
   FileCopy App.Path + "\得意M1.xls", myFilename           i = 2
           Oradyn.MoveFirst
      Do
     DoEvents
       If IsNumeric(Hincd1T.Text) = True Then
          If IsNumeric(Oradyn!TORI_CODE) And Val(Oradyn!TORI_CODE) >= Val(Hincd1T.Text) Then
             Excel_TorisakiF
             i = i + 1
           End If        Else
      'if the textbox's value is word then put the code here
         If Not IsNumeric(Oradyn!TORI_CODE) Then
            Excel_TorisakiF
            i = i + 1
         End If
        End If
      Oradyn.MoveNext
     Loop Until Oradyn.EOF = True    MsgBox myFilename & " を作成終了しました。", vbInformation, "情報"
    WaitL.Caption = vbNullString
    CloseB.Enabled = TrueSyoriExit:
    Hincd1T.SetFocus
    WaitL.Caption = vbNullString
    CloseB.Enabled = True
    CloseB.Visible = True
    TorisakiF.Refresh
End Sub
——————————————————————————————
Private Sub Excel_TorisakiF()
    Dim xlApp As Excel.Application
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet
    
    Set xlApp = CreateObject("excel.application")
    Set xlBook = xlApp.Workbooks.Open(myFilename)
    Set xlSheet = xlBook.Worksheets(1)
   
   If IsNumeric(Oradyn!TORI_CODE) = True Then
       If Err.Number <> 0 Then
         MsgBox Err & ": " & Error(Err)
         Err.Clear
       End If
      xlSheet.Cells(i, 1) = NullNumConv(Oradyn!TORI_CODE)
   Else
      xlSheet.Cells(i, 1) = NullStrConv(Oradyn!TORI_CODE)
   End If
       Debug.Print 0; Oradyn!TORI_CODE
     xlSheet.Cells(i, 2) = NullStrConv(Oradyn!TORI_KANA)
     xlSheet.Cells(i, 3) = NullStrConv(Oradyn!TORI_NAME)
     xlSheet.Cells(i, 4) = NullStrConv(Oradyn!TORI_RYAKU)
     xlSheet.Cells(i, 5) = NullStrConv(Oradyn!TORI_ADDRESS1)
     xlSheet.Cells(i, 6) = NullStrConv(Oradyn!TORI_ADDRESS2)
     xlSheet.Cells(i, 7) = NullStrConv(Oradyn!TORI_TEL)
     xlSheet.Cells(i, 8) = NullStrConv(Oradyn!TORI_FAX)
     xlSheet.Cells(i, 9) = NullStrConv(Oradyn!TORI_AITE_TANMEI)
     
  
    xlApp.Visible = False    xlBook.Save    xlApp.Quit    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    Screen.MousePointer = vbDefault
End Sub  我设置了断点,到了xlSheet.Cells(i, 1) = NullStrConv(Oradyn!TORI_CODE)就不往下走了,而且 鼠标指到NullStrConv(Oradyn!TORI_KANA)上就显示OIP-04099找不到字段名TORI_KANA