Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[RESOLU] Pb fonction avec 2010

Ternoise

XLDnaute Occasionnel
Bonjour le forum

J'ai cette fonction qui fonctionne bien sur Excel 2003
Je viens d'installer 2010 et ça bloque à cette ligne
HTML:
Error errnum
Une idée ?
Merci de votre aide
David

HTML:
' This function checks to see if a file is open or not. If the file is
' already open, it returns True. If the file is not open, it returns
' False. Otherwise, a run-time error occurs because there is
' some other problem accessing the file.

Function IsFileOpen(filename As String)
    Dim filenum As Integer, errnum As Integer

    On Error Resume Next   ' Turn error checking off.
    filenum = FreeFile()   ' Get a free file number.
    ' Attempt to open the file and lock it.
    Open filename For Input Lock Read As #filenum
    Close filenum          ' Close the file.
    errnum = Err           ' Save the error number that occurred.
    On Error GoTo 0        ' Turn error checking back on.

    ' Check to see which error occurred.
    Select Case errnum

        ' No error occurred.
        ' File is NOT already open by another user.
        Case 0
         IsFileOpen = False

        ' Error number for "Permission Denied."
        ' File is already opened by another user.
        Case 70
            IsFileOpen = True

        ' Another error occurred.
        Case Else
            Error errnum
    End Select

End Function
 
Dernière édition:

Ternoise

XLDnaute Occasionnel
Re : Pb fonction avec 2010

En fait, ce classeur a était fait avec Excel 2003 ou 2007, je ne sais plus.
Il me permet de récupérer des information d'un autre classeur.
Voici ce qu'il y a dans un module

 

Dranreb

XLDnaute Barbatruc
Re : Pb fonction avec 2010

Bonjour.
Vous devriez mettre un Case spécifique pour ce numéro d'erreur avec: MsgBox "Fichier """ & filename & """ introuvable. Chemin courant :" & vblf & curdir, vbcritical, "Import"

Je me demande si vous n'auriez pas plutôt intérêt à l'ouvrir systématiquement puis à prendre les dispositions
If LeClasseur.ReadOnly Then
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Pb fonction avec 2010

En général VBA ne ment pas. Si l'erreur était celle qui survient lorsque le fichier n'existe pas, alors c'est qu'il n'existe pas. Mais vous devriez afficher plus d'informations pour vous aider à comprendre pourquoi.
 

Ternoise

XLDnaute Occasionnel
Re : Pb fonction avec 2010

Re,
En effet le fichier
Fich = "C:\DOCUMENTS SALARIES\Chronos.xls" 'à adapter
n'existe plus
J'ai donc remplacé par
Fich = "C:\DOCUMENTS SALARIES\Chronos.xlsm" 'à adapter

Mais maintenant ça bloque içi :

myConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & srcFile & ";" & _
"Extended Properties=""Excel 8.0;" & _
"HDR=" & HDR & ";IMEX=1;"""
 

Dranreb

XLDnaute Barbatruc
Re : Pb fonction avec 2010

Sais pas. Enregistrez une nouvelle macro, tâchez de faire les manœuvres qui aboutiront à engendrer des instructions peut être mieux adaptées à ce nouveau type de fichier.
 

Ternoise

XLDnaute Occasionnel
Re : Pb fonction avec 2010

Merci de vous êtes penché sur mon problème.

Je vais voir si d'autres personnes peuvent m'aider.

J'utilise ce fichier toute les heures et la je suis bien coincé !

Encore merci
 

Ternoise

XLDnaute Occasionnel
Re : Pb fonction avec 2010

Re à tous

Pour être plus parlant, j'ai fais 2 fichiers démos !

- Créer un répertoire ""c:\Fichtemp\"" et mettez ces 2 fichiers dedans puis ouvrez le "Classeur_Cible"

Merci de toute aide.


PS : Avec Excel 2003, OK mais avec Excel 2010 ça ne fonctionne pas !
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…