Résultats pour "memoire sage sql"

146 résultats pour cette recherche

Bonjour,

L'assistance Sage refuse de m'aider sur un bug qui se produit lorsque je reste plus de 5 mn sur le logiciel sans rien faire,

sous prétexte qu'ils ont joint l'application "microsoft SQL server management Studio" au logiciel, avec laquelle je dois me débrouiller.

message erreur:

merci

memoire pool insufisante

Un technicien m'a dit de saisir çà:

alter database basis-name set auto close off

Mais il faudrait savoir ou avec cet algorithme des dossiers :

Franck

mngt studio

Qu'en dites vous?

merci de votre aide.

Franck

Bonjour,

J'ai des fichiers de prospections basiques sur 1 ligne : société, adresse, etc.

Sur Sage, le fichier d'import est sur 2 lignes.

J'ai 1000 lignes de sociétés. Je me demande comment les séparer en deux lignes.

Je vous remercie d'avance pour votre aide.

SOCIETE111;XX;XX;;EUR;SIRET;1020Z;FRTVA;F01;1;S2L2;PC22;F01;;40 RUE DE PIERRE;;;95000;PARIS;FR;;

ETC

VERS

B;SOCIETE111;XX;XX;;EUR;SIRET;1020Z;FRTVA;F01;1;S2L2;PC22;

A;F01;;40 RUE DE PIERRE;;;95000;PARIS;FR;;

B;SOCIETE222;XX;XX;;EUR;SIRET;1020Z;FRTVA;F01;1;S2L2;PC22;

A;F01;;50 RUE DE PAUL;;;95000;PARIS;FR;;

B;SOCIETE333;XX;XX;;EUR;SIRET;1020Z;FRTVA;F01;1;S2L2;PC22;

A;F01;;60 RUE DE RIEN;;;95000;PARIS;FR;;

Bonjour la famille,

Lorsque je tente de me connecter à ma base de données Sage Gestion Commercial v15 dans Excel 2016

par power query ou power pivot, le message d'erreur est qu'il ya incompatibilité d'architecture du pilote, probablement le pilote ODBC.

Mais la connection fonctionne avec excel 2007 uniquement. Hors Excel 2007 ne me satisfait pas en options comme 2016, c'est pourquoi je veux absolument arriver à la premier liaison.

Je vous prie de tourner les méninges pour ce sujet.

Merci.

Bonjour à tous

je travail sur un plan de charge qui contient 2 listes déroulantes qui affiche le calendier Qui affiche le calendrier du mois, ce calendrier va être remplie, je veux savoir si il y a un code vba qui pourrais enregistrer le continue de chaque mois quand on passe a l’autre depuis la liste.

je vous laisse mon projet en fichiers joints

Merci

Bonjour,

Je souhaite conserver en mémoire la valeur d'une cellule à chaque fois que je recalcule ma feuille.

J'aimerai avoir un tableau à 1 colonne qui stocke et affiche les valeurs de cette variable à chaque fois que je recalcule ma feuille.

Le but étant de pouvoir tracer un graphe de cette variable pour 1000 calcules de ma feuille, afin d'avoir un aperçu graphique de celle ci.

Je ne connais rien en VBA, si il existe un fonction ou une petite macro qui peut réaliser ça, je suis preneur.

Merci pour votre aide

Bonjour,

J'ai un classeur de gestion du personnel que je gère avec un userform et quand je ferme l'userform, j'ai une erreur "mémoire insuffisante" et je ne vois pas pourquoi

Pourriez-vous m'aider

Bonjour,

J'ai un moment de solitude ! Je souhaite avoir aucune valeur dans ma cellule si la valeur A et B ne sont pas renseignées !!!! (voir PJ)

Désolé pour cette question simple !!!

4test1.xlsx (16.83 Ko)

Bonjour le Forum,

Je voudrais créer une macro pour automatiser des rechercheV et compagnie sur un ensemble de données.

Cependant, au cours du mois j'aurais d'autres données qui viendront s'ajouter et je voudrais appliquer la même macro pour ces nouvelles lignes ajoutées.

Y a-t-il un moyen d'appliquer la macro à ces nouvelles lignes seulement?

J'avais pensé qu'à la fin de la macro j'aurai pu mettre une ligne de code qui garderai en mémoire le numéro de la dernière ligne non vide et ensuite lancer la macro à partir de cette ligne (+1) une fois les nouvelles données ajoutées

Avez-vous une idée?

BZH83

Bonjour à tous,

lorsque je remplis mon tableau, parfois en tapant la première lettre d un mot, excel me fait une proposition où je n'ai plus qu'à valider sans tout taper.

Mais j'ai l'impression que cela est assez aléatoire (une fois ça marche, une fois pas).

Quelqu'un pourrait m'expliquer comment cela fonctionne et si il est possible de créer une base de données (des noms par ex) qu'excel utiliserait pour me suggérer des noms lorsque je tape la première lettre dans un autre classeur ?

Merci d'avance

Patrice

Bonjour à tous,

j'ai besoin de votre aide svp.

Explication :

Après la saisie des informations sur le userforme on clique sur enregistrer ou quitter.

Problème :

c'est que si on ouvre de nouveau le userform avec le bouton " Commencer" on retrouve plus les informations saisies dans les textBox.

objectifs :

quand j'ouvre le userform je retrouve les informations saisies sur les textBox avant de quitter/enregistrer en se référent au derniers informations enregistrer dans les cellules.

Merci d'avance.

10test.xlsm (146.91 Ko)

Bonjour,

Pour présenter la production, l'efficacité et l'efficience de 15 machines dans un seul tableau, j'ai utilisé la validation des données, d'où à chaque fois que je choisit une ligne, les données varient. Dans ce cas là, comment peux-je consulter les valeurs de l'efficacité dans l'objectif de déterminer la machine la plus efficace (ou la plus efficiente) en cours sans besoin de refaire le calcul et consulter chacune à part et comparer.

Merci d'avance.

Bonjour cher(e)s ami(e)s

Comme le titre le dit, je m'explique.

J'ai un classeur, une sorte de monteur de factures et un autre qui récupère la copie de la facture éditée.

Depuis un certain temps quand les deux sont ouverts à même temps, l'alerte

Mémoire insuffisante pour afficher en entier

s'affiche.

J'ai essayé comme je pouvais mais rien ne s'est fait, j'étais donc obligée de fermer le classeur après avoir enregistré la facture.

pourtant, il est possible que j'édite plusieurs factures à la fois, d'où j'avais créé une fonction pour vérifier si ce classeur est ouvert et le classeur des factures éditées que si j'ai fini les éditions.

NB: le classeur des factures éditées disposes déjà de 176 feuilles aussi, chaque feuille étant une facture.

seule le classeur éditeur de factures dispose de l'horloge analogique au format hh:mm:ss.

Je voudrais savoir ce qui peut bien causer cette alerte, est-ce l'horloge ? Le nombre de feuilles du classeur des factures éditées, ou autre chose liées à ma machine ?

Merci de vous donner la peine de lire ma préoccupation.

Hello forum,

Voici le code d'une barre de progression qui fonctionne très bien. Seulement, il consomme beaucoup de temps en affichage.

En effet, un programme qui s'exécute tout seul en 20 minutes met plus de 2h45 minutes dès qu'on introduit une barre de progression dans chaque boucle.

Je cherche une manière de "gagner" du temps d'exécution. Que faire de la gestion de mémoire? Comment font-ils chez WINDOWS pour compresser leurs délais? Il est vrai que les application qui utilisent VBA en support de nos éditeurs internes au boulot, tournent beaucoup plus vite, tout en affichant une barre de tâche.

Comment font ils? Des idées, je suis preneur

Mon code:

Sub P2(c As Long, n As Long, d As Integer)
    'c est le numéro de la ligne parcourue - compteur
    'n est la ligne d'arrivée
    'd est la ligne de départ 
    Dim m As Long
    U.Top = 350
    U.Left = 450
    U.Height = 120
    m = U.Barre_1.Width - 4

    U.Barre_2.Width = ((c - d + 1) / (n - d + 1)) * m
    U.Label1.Caption = "Progression:  " & Int(100 * (c - d + 1) / (n - d + 1)) & "%"

    Application.ScreenUpdating = True

    If ((c - d + 1) / (n - d + 1)) * 100 = 100 Then
        U.Height = 150
        Application.Wait (Now() + TimeValue("00:00:03"))
        Unload U
    End If
End Sub

Merci d'avance.

bonsoir

j'ai voulu créer un tableau qui reprend chaque valeur de chaque cellule d'une feuille entiere en ecrivant

Dim t As Variant
Set f = ActiveWorkbook.Worksheets
'For Each f In f
 ReDim t(0 To Rows.Count, 0 To Columns.Count - 1)
  For i = 0 To Rows.Count
   For j = 0 To Columns.Count - 1
    If t(i, j) = "xcx" Then
     w = w & Chr(10) & f.Name
    End If
   Next
 Next
MsgBox w

j'ai bien evidement une anomalie a la ligne :

 ReDim t(0 To Rows.Count, 0 To Columns.Count - 1)

Il y a t il une petite astuce pour contourner ce manque de memoire.

Merci pour vos suggestions.

Bonsoir à tous,

Voici un fichier de rapatriement de données via un formulaire.

Il comprend le bug erreur d'exécution 7 mémoire insuffisante.

je sèche complétement sur ce bug depuis quasiment une semaine.

J'ai fait des recherches mais rien ne l'explique.

Les causes possibles qui sont :

  • mémoire nécessaire plus importante que la mémoire disponible ou une limite de segment de 64 ko rencontrée,
  • module ou procédure est trop volumineux,
  • Exécution de MS Windows en mode standard,
  • Exécution MS Windows en mode étendu avec manque de mémoire virtuelle.
  • Exécution de programmes résidents ,
  • Chargement de pilotes de périphérique
  • Espace disponible pour les variables publiques insuffisant, semblent exclues.

La dernière cause possible serait la tentative de mettre à jour une propriété qui est en lecture seule mais le code est inaccessible pour l'utilisateur du fichier.

Il y a bien des instructions de déprotection et de reprotection de certaines feuilles.

Mais elles sont la pour permettre la sauvegarde des données rapatriées sur des feuilles cahées , cela fonctionne bien avec d'autres fichiers construits de manière identique mais pour celui-ci.

En plus il me semble qu'une fois les résultats exportés via le formulaire , les données des feuilles cachées s' éffacent automatiquement.

L'un de vous a t il une idée ? une solution?

Merci d'avance,

Siga

11tst.xlsm (72.44 Ko)

Bonjour,

J'ai une nouvelle question et pas des moindres.

J'avance bien dans mon apprentissage du VBA, mais je me retrouve confronté à un problème: la gestion de la mémoire du fichier Excel .xlsm

En effet, après chaque utilisation de mon fichier (et donc des macros), l'espace mémoire dédié au fichier ne fait qu'augmenter, et ça fait ramer son ouverture ensuite.

Par exemple, le fichier initialement à 23ko passe à 7260ko après utilisation.

Or je souhaite garder le même espace mémoire sans l'augmenter et je pense savoir qu'il y a un moyen de coder ça en VBA pour chaque sub. Mais je ne sais pas comment m'y prendre.

Du coup, quelqu'un peut m'aider ?

Merci d'avance.

Bonjour à tous,

j'utilise, dans le cadre d'un jeu de management de basket en ligne, une macro que j'ai rajouté dans plusieurs docs Excel. Sauf que depuis cette semaine, quand je lance la macro, le message d'erreur 'Mémoire insuffisante" apparait.

Problème, si je me débrouille plutôt pas mal sur Excel, je n'y connais strictement rien en langage VBA. Autre problème, le créateur de cette macro n'est plus sur le jeu, donc impossible de lui demander de l'aide.

Je vous mets en PJ le doc excel de base (à partir duquel j'ai récupéré le code VBA pour l'ajouter dans les autres docs).

Il suffit de cliquer sur le cadre "Check Minutes". Le username est "gpolin" et le mdp est "test9".

Si le problème ne vient pas du code, quelle(s) action(s) dois-je entreprendre pour le rendre à nouveau possible ?

23minuteschecker.xlsm (50.75 Ko)

Bonjour,

Pour une application de métrologie, j'ai une série de cordonnées X et Y de 3000 points environ et je souhaite calculer le plus petit cercle circonscrit qui englobe tout les points.

Je sais qu'un cercle est entièrement défini par 3 points donc j'ai réalisé une macro qui calcule tout les cercles possibles, qui sélectionne ceux qui englobent tout les points puis qui affiche le plus petit de tous.

La macro marche nickel pour un nombre de points à 200-300 mais pour plus de points cela ne fonctionne plus j'ai un problème de "mémoire insuffisante".

Bon je comprends bien que le calcul soit pas évident car le système doit calculer les diamètres de tous les trios de points donc une matrice 3000x3000x3000 soit 27 milliards de données.

Avant de revoir entièrement mon code pour qu'il soit (beaucoup) plus rapide et plus léger, je souhaite savoir si quelqu'un parmi vous aurait une solution plus simple permettant de "débloquer" la mémoire ou je ne sais pas quoi..

Merci d'avance.

Lucas

Bonjour,

une nouvelle "application" en cours de fabrication...

C'est une adaptation libre de Simon© !

Trois niveaux de difficulté (4,6 ou 9 couleurs) et dans chaque niveau de difficulté, une difficulté progressive...

Je vais essayer de mettre en place un système "multi-joueurs" (ce qui pour certain pourrait être simple ).

Cette option permettrait à plusieurs joueurs de se confronter sur la même séquence :

le premier joueur choisi une couleur, le deuxième doit choisir la même "au départ" puis en ajoute une, le troisième clic sur les deux premières et en choisi une troisième... etc...

Je vais tâcher de le "peaufiner" en attendant la ré ouverture de la page de dépôts des applications...

Alors oui Sébastien, je sais, c'est encore "un jeu"... , mais ce n'est pas inutile au niveau apprentissage de code, non ?

Et avec ce jeu je vous conseille d'avoir des mouchoirs avec vous !

@ bientôt

LouReeD

Bonjour à tous,

Je vous remercie déjà de bien vouloir me lire et m'accorder un peu de votre temps pour essayer de résoudre mon problème.

J'ai bcp cherché et simplifié au maximum le code pour résoudre ce problème sur le forum et sur internet en testant directement des solutions proposées pour des soucis quasi similaires mais rien n'y fait et j'ai besoin de nouveaux points de vue.

Alors je vous expose mon souci.

Dans mon boulot, je réalise des simulations sous un logiciel dédié qui va me créer des fichiers résultats dans un format propre à lui avec une certaine tabulation qui permet de les ouvrir sous excel pour les lire. Il faut juste ouvrir le fichier en indiquant à excel qu'il se base sur les espaces et les tabulations pour le charger correctement. Rien de bien sorcier jusque là.

Dans le répertoire des simulations, on retrouve le fichier du modèle, le fichier résultat, le rapport de la simulation, Etc. tous sous le même nom mais avec une extension différente. Bref, tout ca pour dire que le fichier résultat ne sera jamais le seul dans le repertoire lorsqu'une simulation est lancée.

C'est là que ca se complique. Comme je dois réaliser des enveloppes opératoires d'un système, je dois lancer plusieurs simulations, le nombre varient entre 10 et 50000 en fonction des cas. Tout est automatisé bien entendu car je n'ai pas envie de cliquer 50000 fois sur le bouton "RUN" du logiciel.

Une fois les simulations complétées, il faut les post-traiter et j'ai donc aussi créé une macro pour éviter le travail laborieux de post-traitement surtout si j'en ai 50000. Cette macro me permet de:

  • Charger les cas sur je veux considérer pour le post-traitement. Ces derniers apparaissent sous forme d'une liste dans une colonne sous excel avec leur chemin d'accès complet sur le PC. La macro créée est capable de faire le distinguo entre les différentes extension et ne se concentre que sur les fichiers résultats - Aucun souci jusque-là
  • Lire la liste et pour chaque fichier résultat: l'ouvrir, faire des traitements de données par rapport à des variables que je souhaite regarder (pression, temperature, Etc.), extraire les données vers le fichier excel résultats et fermer le fichier de simulations sans le modifier pour qu'il soit toujours lisible par le logiciel
  • Continuer le post-traitement mais directement dans le fichier excel résultat (analyse plus fine des données)

Ce code fonctionne très bien dans le sens où les fichiers sont bien ouverts et les data sont bien extraites. MAIS le problème est que excel finit par saturé généralement après 2500 cas traités.

Lorsque je regarde le gestionnaire des taches pdt l'exécution de la macro, je vois en fait la mémoire allouée à excel qui augmente au fur et à mesure que les fichiers s'ouvrent et se ferment jusqu'au moment où plus de réponse ...

Après différents tests et investigation, la partie du code qui fait que la mémoire augmente est celle qui ouvre et ferme les fichiers. A chaque fois le fichier excel est ouvert dans une nouvelle instance d'Excel. Est ce que cela vient de là ? je ne sais pas répondre. Le fait de fermer le fichier une fois que je n'en ai plus besoin devrait suffire à libérer la mémoire donc je en comprends pas.

Le fait d'avoir des fichiers avec une extension différente de celle d'excel ne permet pas de faire un traitement via SQL et ADO sans ouverture du fichier car le format différent est détecté et bloque.

Le code est déjà optimisé avec la désactivation du calcul auto et la mise à jour écran. J'ai également préféré l'écriture en dure dans les cellules plutôt que des formules.

Je vous copie la partie du code. Merci pour votre aide et vos retours.

[u]

Code:[/u]

Option Explicit

Sub Test_macro()

    Dim T As Double
    T = Timer

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Dim Max_line As Long
Dim indice As Long
Dim P_var_line As Long
Dim Pos_P_var_line As Long
Dim Max_line_trend As Long
Dim check As Long
Dim check_EVR As Long
Dim Forced As Long
Dim Forced_EVR As Long
Dim toto As Long
Dim Max_line_check As Long

Dim conv_factor As Double
Dim Time_end As Double
Dim DT As Double
Dim Time_simu As Double
Dim Forced_value As Double
Dim Forced_value_EVR As Double
Dim EVR_criteria As Double

Dim Main_file As Workbook

Dim Variable As String
Dim Variable_EVR As String

Variable = Cells(3, 3)
conv_factor = Cells(4, 3)
Time_end = Cells(5, 6)
Time_simu = Cells(3, 6) - 2
Forced_value = Cells(6, 6)
Variable_EVR = Cells(7, 3)
EVR_criteria = Cells(7, 6)
Forced_value_EVR = Cells(8, 11)

If Cells(5, 3) = "Min & Max values before end of simulations" Then
    check = 1
Else
    check = 0
End If

If Cells(6, 3) = "Yes" Then
    Forced = 1
Else
    Forced = 0
End If

If Cells(8, 3) = "Yes" Then
    check_EVR = 1
Else
    check_EVR = 0
End If

If Cells(8, 6) = "Yes" Then
    Forced_EVR = 1
Else
    Forced_EVR = 0
End If

Max_line = Cells(1000000, 2).End(xlUp).Row
Cells(1, 17) = 0
Range(Cells(11, 16), Cells(1000000, 22)).Clear

Set Main_file = ActiveWorkbook

For indice = 1 To 1
    Call extraction_1st_case(Main_file, indice, Variable, Variable_EVR, check_EVR, conv_factor)
Next

Max_line = 200

For indice = 2 To Max_line - 10
    Call extraction_other_cases(Main_file, indice, Variable, Variable_EVR, check_EVR, conv_factor)
Next

Sheets("Inlet pressure post-processing").Activate

Set Main_file = Nothing

Cells(3, 9) = Application.Round((Timer - T), 1) & " Sec"

Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

End Sub

Sub extraction_1st_case(Main_file As Workbook, indice As Long, Variable As String, Variable_EVR As String, check_EVR As Long, conv_factor As Double)

Dim chemin As String

Dim catalog_line As Long
Dim time_series_line As Long

Dim count As Long
Dim Max_column As Long

Dim Variable_line As Long
Dim Variable_line_EVR As Long
Dim pressure_column As Long
Dim EVR_column As Long

Dim Max_line_trend As Long
Dim Nb_time_step As Long

Dim increment As Long

Dim temp_file As Workbook

    'Chargement fichier résultat dans un nouveau WB, extraction resultat, puis fermeture du WB
    chemin = Cells(10 + indice, 2)

    'Vérification de la couleur de la cellule sheetname'
    If Sheets("Inlet pressure post-processing").Cells(indice + 10, 1).Interior.ColorIndex = xlNone Then
        On Error Resume Next
        Sheets("Inlet pressure post-processing").Cells(10 + indice, 14).Clear
        Application.DisplayAlerts = False
        Workbooks.OpenText FileName:= _
            chemin, Origin:=xlMSDOS, _
            StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlSingleQuote, _
            ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False, _
            Space:=True, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
        Application.DisplayAlerts = True

        If Err.Number = 0 Then
            Err.Clear
            Set temp_file = ActiveWorkbook

            temp_file.Sheets(1).Select
            temp_file.Sheets(1).Name = "Trend_extract"

            'Identification de la position des variables à traiter
            temp_file.Sheets("Trend_extract").Activate
            catalog_line = Cells.Find(What:="CATALOG", LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row

            time_series_line = Cells.Find(What:="SERIES", LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row

                'Concatenation catalogue & numérotation'
                Range("A" & catalog_line, "A" & time_series_line - 1).Select
                Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
                Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

                For count = 1 To Cells(catalog_line + 1, 3)
                    Cells(catalog_line + 1 + count, 2) = count
                    Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 3)
                    Max_column = Cells(catalog_line + 1 + count, 3).End(xlToRight).column

                    If Max_column > 7 Then
                        For increment = 4 To 10
                            Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 1) & " '" & Cells(catalog_line + 1 + count, increment) & "'"
                        Next
                        Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 1) & "  '" & Cells(catalog_line + 1 + count, 11) & "'"
                        Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 1) & " '" & Cells(catalog_line + 1 + count, 12) & "'"
                    Else
                        For increment = 4 To Max_column
                            Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 1) & " '" & Cells(catalog_line + 1 + count, increment) & "'"
                        Next
                    End If
                Next

            Variable_line = Cells.Find(What:=Variable, LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row
            pressure_column = Cells(Variable_line, 2)

            If check_EVR = 1 Then
                Variable_line_EVR = Cells.Find(What:=Variable_EVR, LookIn:=xlFormulas, _
                LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                MatchCase:=False, SearchFormat:=False).Row
                EVR_column = Cells(Variable_line_EVR, 2)
            End If

            Max_line_trend = Cells(1000000, 1).End(xlUp).Row
            Nb_time_step = Max_line_trend - time_series_line

            'Recopie des données*
            Main_file.Activate
            Sheets("Working_sheet").Activate
            Range(Cells(2, 1), Cells(1000000, 7)).Clear

            If check_EVR = 1 Then
                For increment = 1 To Nb_time_step
                    Cells(increment + 1, 1) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 3) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 2) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, pressure_column + 1) * conv_factor
                    Cells(increment + 1, 4) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, EVR_column + 1)
                Next
            Else
                For increment = 1 To Nb_time_step
                    Cells(increment + 1, 1) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 2) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, pressure_column + 1) * conv_factor
                Next
            End If

            temp_file.Close (False)
            Set temp_file = Nothing

            Main_file.Activate
            Sheets("Working_sheet").Activate

        Else
            Err.Clear
            MsgBox ("First file not existing - Post-processing stopped - Please review inputs")
            Sheets("Inlet pressure post-processing").Activate
            Application.ScreenUpdating = True
            Application.Calculation = xlCalculationAutomatic
            End
        End If
    End If

End Sub

Sub extraction_other_cases(Main_file As Workbook, indice As Long, Variable As String, Variable_EVR As String, check_EVR As Long, conv_factor As Double)

Dim chemin As String

Dim catalog_line As Long
Dim time_series_line As Long

Dim count As Long
Dim Max_column As Long

Dim Variable_line As Long
Dim Variable_line_EVR As Long
Dim pressure_column As Long
Dim EVR_column As Long

Dim Max_line_trend As Long
Dim Nb_time_step As Long

Dim increment As Long

Dim temp_file As Workbook

    Sheets("Inlet pressure post-processing").Activate

    'Chargement fichier résultat dans un nouveau WB, extraction resultat, puis fermeture du WB
    chemin = Cells(10 + indice, 2)

    'Vérification de la couleur de la cellule sheetname'
    If Cells(indice + 10, 1).Interior.ColorIndex = xlNone Then
        On Error Resume Next
        Sheets("Inlet pressure post-processing").Cells(10 + indice, 14).Clear
        Application.DisplayAlerts = False
        Workbooks.OpenText FileName:= _
            chemin, Origin:=xlMSDOS, _
            StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlSingleQuote, _
            ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False, _
            Space:=True, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
        Application.DisplayAlerts = True

        If Err.Number = 0 Then
            Err.Clear
            Set temp_file = ActiveWorkbook

            temp_file.Sheets(1).Select
            temp_file.Sheets(1).Name = "Trend_extract"

            'Identification des variables
            Sheets("Trend_extract").Activate
            catalog_line = Cells.Find(What:="CATALOG", LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row

            time_series_line = Cells.Find(What:="SERIES", LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row

                'Concatenation catalogue & numérotation'
                Range("A" & catalog_line, "A" & time_series_line - 1).Select
                Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
                Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

                For count = 1 To Cells(catalog_line + 1, 3)
                    Cells(catalog_line + 1 + count, 2) = count
                    Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 3)
                    Max_column = Cells(catalog_line + 1 + count, 3).End(xlToRight).column
                    For increment = 4 To Max_column
                        Cells(catalog_line + 1 + count, 1) = Cells(catalog_line + 1 + count, 1) & " '" & Cells(catalog_line + 1 + count, increment) & "'"
                    Next
                Next

            Variable_line = Cells.Find(What:=Variable, LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Row
            pressure_column = Cells(Variable_line, 2)

            If check_EVR = 1 Then
                Variable_line_EVR = Cells.Find(What:=Variable_EVR, LookIn:=xlFormulas, _
                LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                MatchCase:=False, SearchFormat:=False).Row
                EVR_column = Cells(Variable_line_EVR, 2)
            End If

            Max_line_trend = Cells(1000000, 1).End(xlUp).Row
            Nb_time_step = Max_line_trend - time_series_line

            'Recopie des données*
            Main_file.Activate
            Sheets("Working_sheet").Activate
            Range(Cells(2, 1), Cells(1000000, 7)).Clear

            If check_EVR = 1 Then
                For increment = 1 To Nb_time_step
                    Cells(increment + 1, 1) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 3) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 2) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, pressure_column + 1) * conv_factor
                    Cells(increment + 1, 4) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, EVR_column + 1)
                Next
            Else
                For increment = 1 To Nb_time_step
                    Cells(increment + 1, 1) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, 1)
                    Cells(increment + 1, 2) = temp_file.Sheets("Trend_extract").Cells(time_series_line + increment, pressure_column + 1) * conv_factor
                Next
            End If

            temp_file.Close (False)
            Set temp_file = Nothing

            Main_file.Activate
            Sheets("Working_sheet").Activate

        Else
            Err.Clear
            Sheets("Inlet pressure post-processing").Cells(10 + indice, 14) = "Input file not found"
            Sheets("Inlet pressure post-processing").Cells(11 + Sheets("Inlet pressure post-processing").Cells(1, 17), 16) = Sheets("Inlet pressure post-processing").Cells(10 + indice, 2)
            Sheets("Inlet pressure post-processing").Cells(11 + Sheets("Inlet pressure post-processing").Cells(1, 17), 22) = Sheets("Inlet pressure post-processing").Cells(10 + indice, 14)
            Sheets("Inlet pressure post-processing").Cells(1, 17) = Sheets("Inlet pressure post-processing").Cells(1, 17) + 1

        End If
    End If

End Sub

Recherches récentes

queryusfmasquer lignes filtreshourpmucalcul satisfaction clientcsv recherche vbavba stextrecherche csvcsv rechercheliste deroulantecongeparc autosatisfaction clientscrollbar listboxmodestelotocrackcalendrier dynamiquekeno