Ouvrir une feuille EXCEL directement depuis un programme PCVUE

  • gishrek
    gishrek
    Modérateur
    Automaticien amateur

    1 message
    Inscrit le 27/10/2016

    le 27/10/2016 à 14:56 Citer ce message

    Bonjour à tous.
    Je me permet de publier après de multiple recherche sur le net.
    Dans le cadre d'un rapport journalier de compteur, je dois écrire un programme sous PCVUE qui extrait les données en csv ( cette partie fonctionne), ensuite grâce à une macro EXCEL faire une présentation de ce rapport en fonction d'un exemple(cette partie fonctionne également). Le but de ma demande est de faire en sorte que PCVUE ouvre tout simplement le fichier EXCEL qui lui effectura la macro à l'ouverture. j'aurais besoin de la ligne de code qui va bien pour pouvoir ouvrir le fichier EXCEL depuis le programme PCVUE. Je pensais à un fopen() mais je ne connais pas très bien la programmation VB sous PCVUE.
    Merci d'avance.
  • automationsense
    automationsense
    Modérateur
    Automaticien vétéran

    486 messages
    Inscrit le 28/04/2016

    le 27/10/2016 à 15:32 Citer ce message

    Bonjour,
    Essaies avec ça :

    monFichierExcel="C:\\monfichier.xls"; //répertoire du fichier excel

    intReturn = APPLICATION("LOAD",monFichierExcel);
    Cordialement,
    Image

    " Travailles pour tes propres rêves sinon quelqu'un d'autres t'embauchera pour réaliser les siens "
  • Kaniass
    Kaniass

    le 30/10/2016 à 05:36 Citer ce message

    Oui mais attention le problème c'est de savoir quand l'export sera finit.
    Je conseille d'utiliser la variable registre de status de l'export et de la mettre en événement pour déclencher le programme scada basic. Si l'export s'est bien passé elle doit être égale a 0.
  • automationsense
    automationsense
    Modérateur
    Automaticien vétéran

    486 messages
    Inscrit le 28/04/2016

    le 30/10/2016 à 09:33 Citer ce message

    Bonjour Kaniass,
    Il parvient déjà à exporter les données sur fichier CSV,ce qu'il veut maintenant c'est de pouvoir l'ouvrir depuis PCVUE.Merci de ta remarque.

    @gishrek ,dis nous ce que ça a donné de ton coté
    Cordialement,
    Image

    " Travailles pour tes propres rêves sinon quelqu'un d'autres t'embauchera pour réaliser les siens "
  • automatique72
    automatique72
    Modérateur
    Automaticien amateur

    2 messages
    Inscrit le 10/07/2016

    le 23/11/2016 à 22:54 Citer ce message

    bonjour
    voici un exemple de programme issue de la démo pcvue.
    tu trouvera tous qu'il faut pour formaté une feuille excel et l’ouvrir depuis pcvue.
    par contre il faut l'adapter par rapport a ton projet.
    si tu travail avec une version 11.1 et plus dans la macro trend il y'a un bouton qui s'appelle "excel" et avec ça tu peut faire des extraction excel et générer des rapport.

    Private Sub StartExcel_Click()

    Dim MyXl As Object
    Dim MyWorkBook As Object
    Dim MyTable As Object
    Dim FileCsvName As String
    Dim FileXlsName As String

    On Error GoTo TrapError

    'Open csv file
    FileCsvName = ThisProject.Path & "\TP\" & [EXTRACT.NOMFIC]
    'Set FileSource = fs.OpenTextFile(FileCsvName, 1, 0)
    ' Target EXCEL file
    FileXlsName = ThisProject.Path & "\TP\" & "Export_" & Format(Date, "mmmddyyyy") & "_" & Format(Time, "hhmmss") & ".xls"

    'Start Xls
    Set MyXl = CreateObject("Excel.Application")

    'Create a new Workbook
    Set MyWorkBook = MyXl.Workbooks.Add
    MyWorkBook.Title = Format(Date, "mmmddyyyy") & "_" & Format(Time, "hhmmss")
    MyWorkBook.SaveAs FileName:=FileXlsName
    MyXl.Visible = True

    ' Fill the active worksheet with the text file (comma separated)
    Set MyTable = MyXl.ActiveSheet.QueryTables.Add(Connection:="TEXT;" & FileCsvName, Destination:=MyXl.ActiveSheet.Range("A1"))
    MyTable.Name = "tab-file"
    MyTable.FieldNames = True
    MyTable.RowNumbers = False
    MyTable.FillAdjacentFormulas = False
    MyTable.PreserveFormatting = True
    MyTable.RefreshOnFileOpen = False
    MyTable.RefreshStyle = 1 'xlInsertDeleteCells
    MyTable.SavePassword = False
    MyTable.SaveData = True
    MyTable.AdjustColumnWidth = True
    MyTable.RefreshPeriod = 0
    MyTable.TextFilePromptOnRefresh = False
    MyTable.TextFilePlatform = 437
    MyTable.TextFileStartRow = 1
    MyTable.TextFileParseType = 1 'xlDelimited
    MyTable.TextFileTextQualifier = 1 ' xlTextQualifierDoubleQuote
    MyTable.TextFileConsecutiveDelimiter = False
    MyTable.TextFileTabDelimiter = False
    MyTable.TextFileSemicolonDelimiter = False
    MyTable.TextFileCommaDelimiter = True
    MyTable.TextFileSpaceDelimiter = False
    MyTable.TextFileColumnDataTypes = Array(1, 1)
    MyTable.TextFileTrailingMinusNumbers = True
    MyTable.Refresh BackgroundQuery:=False

    ' Display Excel
    MyXl.Visible = True

    Set MyXl = Nothing
    Set MyWorkBook = Nothing

    Exit Sub

    TrapError:
    MsgBox "Error: Application cannot starts Excel"
    'MyWorkBook.Close
    Set MyXl = Nothing
    Set MyWorkBook = Nothing

    End Sub
  • Kaniass
    Kaniass

    le 04/12/2016 à 04:22 Citer ce message

    @automationsense
    Oui, j' ai bien compris. Je voulais juste mettre en lumiere le fait que, si on veut ouvrir automatiquement un fichier Excel a la fin d'1 export alors il faut utiliser la variable de Status car c' est une operation asynchrone.

    @automatique72
    Ce code est bien pour voir comment manipuler des objets Excel depuis le VBA mais, attention, dans le cadre d' 1 export mieux vaut utiliser la notion de Modele d'export. Ca permet de faire un fichier Exel deja tout pret pour recevoir les donnees d' Export.

    @gishrek
    Il serait effectivement sympa de dire si ton probleme est resolu!
  • AUTOMATIQUE72
    AUTOMATIQUE72

    le 04/12/2016 à 20:14 Citer ce message

    bonjour,
    merci @automationsense pour tes remarques.
    oui, le code que j'ai met si juste pour montrer comment manipuler un objet excel via VBA et de connaitre aussi qlq verbe clés pour cet objet(EXCEL).c'est pourquoi j'ai dit que depuis la 11.1 un objet extraction ou export est inclus dans la macro trend.
    sachant que cette option d'export elle est payante (activer dans le dongle pcvue)..

    @gishrek
    on attend tj ton retour pour ton problème.

Répondre à ce message

 

7 choses à savoir si Tu débutes en automatisme...

7 choses que tu dois savoir si tu debutes en automatismeCliquez ici pour télécharger le guide PDF

Superv 3