IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WebDev Discussion :

Convertir code VBA vers WebDev


Sujet :

WebDev

  1. #1
    Membre averti
    Homme Profil pro
    BTS SIO - SLAM
    Inscrit en
    Septembre 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : BTS SIO - SLAM

    Informations forums :
    Inscription : Septembre 2015
    Messages : 16
    Par défaut Convertir code VBA vers WebDev
    Bonjour à tous,

    Je suis débutant en terme de développement sous WebDev, j'ai quelques notions de VBA. J'aimerai que quelqu'un puisse m'aider à convertir un code VBA en language WebDev.
    Voici le code VBA en question:

    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Private Function CreationDossier(sDossier) As Long 'Fonction pour créer Dossier de Sauvergarde
     
        Rep = SHCreateDirectoryEx(0&, sDossier, 0&)
     
    End Function
     
    Sub UserF10() 'Affiche la fenêtre de sauvergarde
     
        If MsgBox("Etes-vous certain de vouloir sauvegarder ?", vbYesNo + vbQuestion, "Demande de confirmation") = vbYes Then
     
            Sauvegarde 'Si bouton Oui est préssé alors on appelle la fct sauvergarde
     
        End If
     
    End Sub
     
    Sub Sauvegarde()
     
        On Error GoTo CreerDossier 'Si il y a une erreur alors directement à la ligne CreerDossier
     
        Dim sDossier As String
     
        sDossier = "C:\Documents and Settings\TON PROFIL\Mes documents\Enregistrer\" & Format(Date, "yyyy") & "\" & Format(Date, "mmmm")
        Fichier = "LE NOM DE TON FICHIER" & Format(Date, "dd-mm-yyyy")
     
    CreerDossier:
     
        If Err.Number = 1004 Then 'Si dossier pas créer
     
            CreationDossier sDossier 'On le créer en appelant la fct "CreationDossier"
     
        End If
     
        Application.DisplayAlerts = False
        ThisWorkbook.SaveAs sDossier & "\" & Fichier & ".xls " 'Sauvergarde du dossier
        Application.DisplayAlerts = True
        MsgBox ("Votre fichier a bien été enregistré") 'Fenêtre d'information
     
        Exit Sub
     
    End Sub

    Et voici le code que j'utilise sous Webdev :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    //Permet de récupérer le numéro de la ligne sélectionnée dans la (TABLE_REQ_Filtre_Article)
    nIndice est un entier
    nIndice = TableSelect(TABLE_REQ_Liste_Item)
     
    //Choix_Item est égal à la valeur de l'ITEM de la ligne sélectionnée
    Choix_Item est une chaîne
    Choix_Item = TABLE_REQ_Liste_Item[nIndice][1]
    //Choix_Désignation est égal à la valeur de l'ITEM de la ligne sélectionnée
    Choix_Désignation est une chaîne
    Choix_Désignation = TABLE_REQ_Liste_Item[nIndice][2]
    //Choix_Famille est égal à la valeur de l'ITEM de la ligne sélectionnée
    Choix_Famille est une chaîne
    Choix_Famille = TABLE_REQ_Liste_Item[nIndice][3]
    //Choix_Cci est égal à la valeur de l'ITEM de la ligne sélectionnée
    Choix_Cci est une chaîne
    Choix_Cci = TABLE_REQ_Liste_Item[nIndice][4]
     
    //On déclare l'objet xl qui permet de piloter Excel
    xl  est un objet Automation dynamique
    xl = allouer un objet Automation "Excel.Application"
     
    //On rend visible l'application Excel
    xl>>visible = True
     
    //Désactive l'affichage écran
    xl>>ScreenUpdating = False
     
    //Annule toutes les alertes Excel
    xl>>DisplayAlerts = False
     
    //On ouvre le classeur "Matrice.xlsx"
    xl>>workbooks>>open("C:\Mes Sites\Portails NRC\PORTAILS_NRC_WEB\DATA\Matrice.xlsx")
     
    //On sélectionne la feuille "Exportation"
    xl>>Sheets("Exportation")>>Select()
     
    // Modification de la feuille
    i est un entier = 4 //Ligne 4 correspondant à l'insertion des données de la Table
    xl>>range("B"+i)>>Value = Choix_Item
    xl>>range("C"+i)>>Value = Choix_Désignation
    xl>>range("D"+i)>>Value = Choix_Famille
    xl>>range("E"+i)>>Value = Choix_Cci
     
    xl>>range("F"+i)>>Value = SAI_Dépenses_d_indus
    xl>>range("G"+i)>>Value = SAI_Coût_générique
    xl>>range("H"+i)>>Value = SAI_Coût_estimé
     
    j est une chaîne = "C" //Colonne correspondant à l'insertion des données Tx horaires,Coef,HIU,Jalons,Coûts NRC Jalons
    xl>>Cells(8, j)>>Value = SAI_Taux_Horaire
    xl>>Cells(10, j)>>Value = SAI_Coef_Apprent
    xl>>Cells(12, j)>>Value = SAI_HIU
    xl>>Cells(16, j)>>Value = SAI_Jalon_RCS2
    xl>>Cells(17, j)>>Value = SAI_Jalon_RCS3
    xl>>Cells(18, j)>>Value = SAI_Jalon_RCS4
    xl>>Cells(19, j)>>Value = SAI_Jalon_RCS5
    xl>>Cells(20, j)>>Value = SAI_Jalon_FETT
    xl>>Cells(21, j)>>Value = SAI_Jalon_LOT1
    xl>>Cells(23, j)>>Value = SAI_Coût_NRC_RCS2
    xl>>Cells(24, j)>>Value = SAI_Coût_NRC_RCS3
    xl>>Cells(25, j)>>Value = SAI_Coût_NRC_RCS4
    xl>>Cells(26, j)>>Value = SAI_Coût_NRC_RCS5
    xl>>Cells(27, j)>>Value = SAI_Coût_NRC_FETT
    xl>>Cells(28, j)>>Value = SAI_Coût_NRC_LOT1
     
    k est une chaîne = "G" //Colonne correspondant à l'insertion des données Coûts NRC Total et Total heures Jalons
    xl>>Cells(16, k)>>Value = SAI_Coût_NRC_Total
    xl>>Cells(18, k)>>Value = SAI_Total_Heures_Jalons
     
    //Restaure l'affichage des alertes
    xl>>DisplayAlerts = True
     
    //Active l'affichage écran
    xl>>ScreenUpdating = True
    Comme vous avez pu le comprendre le code VBA me permet d'enregistrer un fichier sous un répertoire, et mon code WebDev permet de manipuler un fichier xlsx ("Matrice.xlsx"). J'aimerai qu'à la fin de mon code WebDev s’exécute le code VBA pour proposer à l'utilisateur d'enregistrer son fichier.

    Merci d'avance pour votre aide.

  2. #2
    Membre éclairé
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 62

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Par défaut
    Bonjour,

    Si tu es sous WebDev ton code va donc tourner sur un serveur Web et non sur ton poste de développement (où tu peux faire ce que tu veux, avec excel comme avec ton système de fichiers).
    Commence par déployer très rapidement ton appli sur un serveur et alors tu verra (concrètement) ce que tu peux faire et ce que tu ne peux plus faire (parce que tu es sur un serveur Web...).

  3. #3
    Membre averti
    Homme Profil pro
    BTS SIO - SLAM
    Inscrit en
    Septembre 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : BTS SIO - SLAM

    Informations forums :
    Inscription : Septembre 2015
    Messages : 16
    Par défaut
    Merci pour votre réponse. Si Excel est installé sur le serveur je ne vois pas où est le problème. J'ai vu un topic où quelqu'un arrive à convertir le code vba => http://www.developpez.net/forums/d37...ode-vb-windev/
    Moi je cherche à faire la même chose.
    Cordialement.

  4. #4
    Membre éclairé
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 62

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Par défaut
    Bon ben pas de problème alors, tu as les fonctions de gestion des fichiers externes pour ça...

Discussions similaires

  1. [XL-2010] Copie de formule du code VBA vers une cellule avec Cells(,)
    Par Omnbre dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/02/2016, 11h19
  2. [Débutant] Convertion code VBA vers c# pour tableau croisé
    Par djdidi2010 dans le forum Développement Windows
    Réponses: 0
    Dernier message: 15/10/2015, 19h24
  3. traduire un code vba vers vb.net
    Par houssine77100 dans le forum VB.NET
    Réponses: 3
    Dernier message: 21/11/2010, 13h15
  4. retranscription de code vbs vers vba
    Par kev0631 dans le forum Général VBA
    Réponses: 1
    Dernier message: 24/04/2007, 18h46
  5. [VBA-E] Convertir du code VBA 2000 en VBA 97
    Par Mykeul dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/04/2006, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo