Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Excel inplace auf VB Form erstellen

Frage Entwicklung VB for Applications

Mitglied: raziel

raziel (Level 1) - Jetzt verbinden

13.07.2011, aktualisiert 13:57 Uhr, 3204 Aufrufe, 4 Kommentare

Ich möchte auf einem Form über VB2008 eine Art Excel inplace erstellen (ähnlich SAP). Nun Habe ich schon etwas vorbereitet, jedoch gibt mir VB einen deklarierungsfehler bei den "ActiveWorkbook" und "ActiveSheet". Auch einen Operaatorenfehler bei "If Err() < 0 ". Ich dachte die Befehle sollten doch von dem Verweis der Excel Library übenommen werden. Weiss jemand dazu rat?

01.
 
02.
Public Class frmExcelInplaceWdb 
03.
 
04.
    Public oExl As New Microsoft.Office.Interop.Excel.Application 
05.
 
06.
    Private Sub OpenExlWS(ByVal sWSName As String, ByVal sTabName As String) 
07.
        Dim A As Object 
08.
        Dim Zeile As Long, Spalte As Integer 
09.
        ' Workbook öffnen 
10.
        On Error Resume Next 
11.
        oExl.Workbooks.Open(sWSName) 
12.
        If Err() <= 0 Then 
13.
            MsgBox("Exceldatei konnte nicht gefunden oder geöffnet werden.", _ 
14.
              vbExclamation, "Dateifehler") 
15.
            Exit Sub 
16.
        End If 
17.
 
18.
        On Error GoTo 0 
19.
 
20.
        ' Tabelle selektieren: 
21.
        ActiveWorkBook.Sheets(sTabName).Select() 
22.
 
23.
        ' Zelle lesen 
24.
        A = ActiveSheet.Cells(Zeile, Spalte).Value 
25.
 
26.
        ' Zelle schreiben 
27.
        ActiveSheet.Cells(Zeile, Spalte).Value = "Test" 
28.
 
29.
        ' alles schließen 
30.
        ActiveWorkbook.Close(SaveChanges:=True) 
31.
        oExl.Quit() 
32.
        oExl = Nothing 
33.
    End Sub 
34.
 
35.
 
36.
End Class 
37.
 
Mitglied: SlainteMhath
13.07.2011 um 13:25 Uhr
Moin,

[...] VB2008 [...]
Du meinst sicher VB.NET bzw Visual Studio 2008

[...] deklarierungsfehler bei den "ActiveWorkbook" und "ActiveSheet" [...]
Versuch doch mal ein oExl. davor zustellen

If Err() < 0
Das ist so auch falsch. Err() ist ein Array, das kannst Du nicht gegen einen Integer prüfen. Abgesehen davon erledigt mal das Errorhandling in VB.NET mit Try...Catch.

Und, bitte, Benutze die CODE tags, siehe "Formatierungshilfe" beim Posten

lg,
Slainte
Bitte warten ..
Mitglied: 76109
13.07.2011 um 13:42 Uhr
Eventuell hilft Dir das ein wenig weiter?
01.
Public Class frmExcelInplaceWdb 
02.
 
03.
Public oExl As New Microsoft.Office.Interop.Excel.Application 
04.
 
05.
Private Sub OpenExlWS(ByVal sWSName As String, ByVal sTabName As String) 
06.
Dim A As Variant, Wkb As Object, Wks As Object 
07.
Dim Zeile As Long, Spalte As Long 
08.
 
09.
On Error Resume Next 
10.
 
11.
Set Wkb = oExl.Workbooks.Open(sWSName) 
12.
 
13.
Set Wks = Wkb.Sheets(sTabName) 
14.
 
15.
'If oExl.Err.Number <> 0 Then MsgBox "Fehler":  Exit Sub 
16.
 
17.
'If Wks Is Nothing Then MsgBox "Fehler":  Exit Sub 
18.
 
19.
On Error GoTo 0 
20.
 
21.
A = Wks.Cells(Zeile, Spalte).Value 
22.
 
23.
Wks.Cells(Zeile, Spalte).Value = "Test" 
24.
 
25.
Wkb.Close True 
26.
 
27.
oExl.Quit 
28.
 
29.
End Sub 
30.
 
31.
End Class
Gruß Dieter
Bitte warten ..
Mitglied: mathe172
13.07.2011 um 13:50 Uhr
Hallo,

wenn ich dich richtig verstehe, hast du einen Verweis in den Projekteigenschaften gemacht, oder?
Hast du den Namensraum aber Importiert (direkt unter den Verweises oder am Anfang einer Code-Datei)

Mit freundlichen Grüßen,
Mathe172
Bitte warten ..
Mitglied: raziel
13.07.2011 um 15:40 Uhr
@Didi: Hallo DidiDanke für dieses Script, es ist fehlerlos. Leider kann ich daraus nicht ablesen wie ich jetzt ein bestimmtes File öffne.
@Mathe: Verweis zu was? Dito Namespace ;)

Gruss
raziel
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Visual Studio
gelöst (VB) Form-Elemente nicht wie im Entwurf angeordnet (2)

Frage von MrCount zum Thema Visual Studio ...

VB for Applications
Excel Inhaltsverzeichnis Layout automatisch erstellen (3)

Frage von Julian8990 zum Thema VB for Applications ...

Visual Studio
gelöst VB.Net HeatMap erstellen (3)

Frage von Aicher1998 zum Thema Visual Studio ...

Heiß diskutierte Inhalte
Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...