CATIA V5 | 3DEXPERIENCE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
SSD interne Crucial BX500 2,5″ SATA – 500 Go à 29,99€
29.99 €
Voir le deal

Lire le contenu d'une cellule dans un classeur Excel femé

3 participants

Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Lire le contenu d'une cellule dans un classeur Excel femé

Message par ratel Jeu 26 Juin 2014 - 19:07

Salut à tous,

Je cherche une méthode simple pour extraire le contenu d'une cellule d'un classeur Excel fermé pour le mettre dans une message box d'une macro Catia.
Ce que j'ai trouvé :

MsgBox Excel.ExecuteExcel4Macro("'C:\Users\Desktop\[Feedback_Data.xlsx]Feuil1'!$B$2")

Ça marche bien quand je la met à l'intérieur d'une cellule d'un autre classeur, mais ça marche pas quand je l'exécute depuis vba de catia.

Des idées?

Merci.

ratel
timide
timide

Messages : 10
Date d'inscription : 02/06/2014
Localisation : Suisse

Revenir en haut Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Re: Lire le contenu d'une cellule dans un classeur Excel femé

Message par Guss_ Ven 27 Juin 2014 - 11:02

jettes un œil à ma macro ici
https://catiav5.forumactif.org/t168p90-section-programmation-catscript-vba-vbnet#1255

elle permet d'un part d'envoyer des données Catia vers Excel
d'autre part elle permet de d'envoyer des données Excel vers Catia

Guss_
Admin
Admin

Messages : 530
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Re: Lire le contenu d'une cellule dans un classeur Excel femé

Message par ratel Ven 27 Juin 2014 - 17:49

Merci pour ta réponse, c'est effectivement très utile.
J'ai pu m'en inspirer ce code:

Dim Excel As Object
   On Error Resume Next
   Set Excel = GetObject(, "Excel.Application")
   If Err.Number <> 0 Then
       Set Excel = CreateObject("Excel.Application")
   End If
   On Error GoTo 0
   Excel.Visible = False
   Excel.Workbooks.Open FileName:="C:\Users\Desktop\Feedback_Data.xlsx"
   MsgBox Excel.Worksheets("Feuil1").Range("B2").Value


Le seul problème c'est que je ne peux toujours pas lire le contenu d'un classeur Excel fermé, puisque ce code ouvre le classeur mais le cache (J'ai triché)

ratel
timide
timide

Messages : 10
Date d'inscription : 02/06/2014
Localisation : Suisse

Revenir en haut Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Re: Lire le contenu d'une cellule dans un classeur Excel femé

Message par Guss_ Mar 1 Juil 2014 - 13:21

Je ne sais pas si c'est possible de lire un fichier excel sans ouvrir excel
Peut être en fouillant autour de l'objet Excel

Guss_
Admin
Admin

Messages : 530
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Re: Lire le contenu d'une cellule dans un classeur Excel femé

Message par raphael_59240 Mer 28 Oct 2015 - 13:55

Bonjour,


il n est pas possible de récupérer des données sans que le fichier ne soit ouvert techniquement et ensuite refermé.

à partir d un bouton sur un userform , j ai ecris ce code  (Bonne amusemant Wink  ) :
Code:
Private Sub bp_selection_Click()


Dim Nom As String

Dim Val_excelsheet As Integer
Dim Dep_valexcelsheet As Integer



On Error Resume Next
Set Excel = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
    Set Excel = CreateObject("Excel.Application")
End If
On Error GoTo 0



Excel.Visible = False

Chemin = CATIA.FileSelectionBox("Selectionner le fichier nomenclature", "*.xlsx", CatFileSelectionModeOpen) ''''permet d'avoir le chemin complet du fichier
If Chemin = "" Then
    MsgBox "Aucune selection"

Else
    Excel.Workbooks.Open FileName:=Chemin

    Nom = Split(Right(Chemin, 20), "\")(1)
    
    If Excel.Worksheets(1).cells(1, 1).Value <> "nomenclature" Then
        MsgBox "ce fichier n'est pas conforme"
        Excel.Workbooks(Split(Right(Chemin, 20), "\")(1)).Close False
        
    Else
    
    
        Tb_choix = Nom
        boite_nom.bp_Depart.Enabled = True
        boite_nom.combo_onglet.Enabled = True
        Val_excelsheet = Excel.Worksheets.Count
        For Dep_valexcelsheet = 1 To Val_excelsheet
            combo_onglet.AddItem (Excel.Worksheets(Dep_valexcelsheet).Name)
        Next
            combo_onglet.ListIndex = 0
    Call entre_tableau
    End If
    
    
End If


End Sub
raphael_59240
raphael_59240
actif
actif

Messages : 127
Date d'inscription : 28/03/2015
Age : 53
Localisation : dunkerque

Revenir en haut Aller en bas

Lire le contenu d'une cellule dans un classeur Excel femé  Empty Re: Lire le contenu d'une cellule dans un classeur Excel femé

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum