| Hi Toto, 
 ich kann Dir mal mit einem älteren Quellcode von mir helfen. Dieser lädt ein Word-Document  oder Excel-Sheet je nach Menüauswahl.
 
 Hier findest Du einige grundlegende Dinge im Umgang mit dem Ole-Control:
 
 
 Private Sub Form_Load()
   WindowState = vbNormal
   mnupop1.Visible = False
End Sub
 
Private Sub Form_Resize()
   If WindowState = vbMinimized Then Exit Sub
   With RTF
      .Top = 0
      .Left = 0
      .Width = ScaleWidth
      .Height = ScaleHeight - StatusBar1.Height
   End With
End Sub
 
Private Sub mnucopy_Click()
   If OLE1.Class <> "" Then
      OLE1.Copy
   End If
End Sub
 
Private Sub mnucut_Click()
  If OLE1.Class = "" Then Exit Sub
  OLE1.Copy
End Sub
 
Private Sub mnudata_Click()
   frmSetData.Show
End Sub
 
Private Sub mnudruck_Click()
   mdTools.PrtDlg
End Sub
 
Private Sub mnuEnd_Click()
   OLE1.Close
   Unload frmDokEdit
End Sub
 
Private Sub mnuloesch_Click()
   OLE1.Close
   StatusBar1.Panels(2).Text = ""
End Sub
 
Private Sub mnuobj_Click()
   OLE1.InsertObjDlg
   If InStr(UCase(OLE1.Class), "EXCEL") = 0 And InStr(UCase(OLE1.Class), _
     "WORD") = 0 Then
      OLE1.Close
      MsgBox "BSM02 unterstützt nur MS Word und MS Excel", vbExclamation, _
        "Objekt verweigert"
   End If
End Sub
 
Private Sub mnuopen_Click()
   Dim A As String
   A = mdTools.ShowOpenDlg(frmDokEdit, "", "Datei öffnen", "")
   OpenFiles A
End Sub
 
Private Sub mnupage_Click()
   mdTools.PageSitzDlg
End Sub
 
Private Sub mnupaste_Click()
  OpenFiles Clipboard.GetText
End Sub
 
Private Sub mnuprint_Click()
  If OLE1.Class = "" Then Exit Sub
  OLE1.Copy
  If InStr(UCase(OLE1.Class), "EXCEL") > 0 Then
     OLE1.object.ActiveSheet.PrintOut
  ElseIf InStr(UCase(OLE1.Class), "WORD") > 0 Then
     Printer.Print
     Printer.PaintPicture Clipboard.GetData, Printer.ScaleLeft, Printer.ScaleTop
     Printer.EndDoc
  End If
End Sub
 
Private Sub mnuspeicher_Click()
   Dim A As String
   If OLE1.Class = "" Then Exit Sub
   A = mdTools.ShowSaveDlg(frmDokEdit, "", "Datei speichern", "")
   If A <> "" Then
      Open A For Binary As #1
         OLE1.SaveToFile 1
      Close #1
   End If
   StatusBar1.Panels(2).Text = A
End Sub
 
Private Sub OLE1_Resize(HeightNew As Single, WidthNew As Single)
   OLE1.Top = 300
   OLE1.Left = 350
   If OLE1.Class <> "" Then RTF.Visible = False
End Sub
 
Private Sub RTF_MouseDown(Button As Integer, Shift As Integer, x As Single, y _
  As Single)
    If Button = 2 Then
       PopupMenu mnupop1
    End If
End Sub
 
Private Sub StatusBar1_Click()
    PopupMenu mnudatei
End Sub
 
Private Sub StatusBar1_MouseDown(Button As Integer, Shift As Integer, x As _
  Single, y As Single)
    StatusBar1.Panels(1).Bevel = sbrInset
End Sub
 
Private Sub StatusBar1_MouseUp(Button As Integer, Shift As Integer, x As _
  Single, y As Single)
     StatusBar1.Panels(1).Bevel = sbrRaised
End Sub
 
Private Sub OpenFiles(ByVal A As String)
   On Error Resume Next
   If A <> "" Then
      Open A For Binary As #1
         OLE1.ReadFromFile 1
         If Err.Number > 0 Then
            OLE1.CreateEmbed A
         End If
         OLE1.DoVerb vbOLEShow
      Close #1
   End If
   If InStr(UCase(OLE1.Class), "EXCEL") = 0 And InStr(UCase(OLE1.Class), _
     "WORD") = 0 Then
      OLE1.Close
      MsgBox "BSM02 unterstützt nur MS Word und MS Excel oder Dokumente im RTF" & _
        "- Format.", vbExclamation, "Objekt verweigert"
      Exit Sub
   End If
   StatusBar1.Panels(2).Text = A
End Sub0 |