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

VB 6 et antérieur Discussion :

Débutant cherche a copier un Montant


Sujet :

VB 6 et antérieur

  1. #21
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Ce code me copie toute ma page et me fait aussi une fenetre avec toute ce qu'il a copié.
    pas de bug


    Citation Envoyé par ProgElecT Voir le message
    Un dernier essai pour ce soir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub copiersoustotal()
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     
     
        MsgBox (screenText)
        'Clipboard.SetText CStr(screenText), 1
    End Sub

  2. #22
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ProgElecT Voir le message
    Dans la fenêtre fond bleu foncé, encre bleu clair, c'est un fichier que tu as ouverts?

    Que donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub copiersoustotal()
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
        End With
        MsgBox (Session)
     
        'Dim screenText As String
        'screenText = Session
        'Clipboard.SetText CStr(screenText), 1
    End Sub
    J'ai cette erreur avec ce code.
    Nom : Capture6.JPG
Affichages : 149
Taille : 61,9 Ko

  3. #23
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut
    Citation Envoyé par cosmicmurder Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub copiersoustotal()
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     
     
        MsgBox (screenText)
        'Clipboard.SetText CStr(screenText), 1
    End Sub
    Ce code me copie toute ma page et me fait aussi une fenêtre avec toute ce qu'il a copié.
    pas de bug
    C'est le code qui va dans le bon sens.
    Pour éliminer la fenêtre on passe en commentaire le MsgBox.
    Dans la variable screenText on a le texte de ta fenêtre, il suffit d'y appliquer le code que je t'ai mis au post N°6
    donc essais ce
    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
    Sub copiersoustotal()
    ' récupération du texte de la fenêtre fond bleu foncé
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     'screenText contient le texte de la fenêtre fond bleu foncé
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine)
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
            SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
            Exit For
        End If
    Next T
    '********** provisoire, pour debug *************
    MsgBox "Le premier SUB-TOTAL est: " & SousTotal, vbInformation, "resultat"
    End Sub
    Sa donne quoi ?
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  4. #24
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Salut

    Cool il ça y est pratiquement... j'ai une fenêtre avec les bon sous-total qui m'apparait mais dans le presse papier c'est encore toute la page qui est copier...

  5. #25
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    On avance, on avance ....
    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
    Sub copiersoustotal()
    ' récupération du texte de la fenêtre fond bleu foncé
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     'screenText contient le texte de la fenêtre fond bleu foncé
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine)
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
            SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
            Exit For
        End If
    Next T
     
    '********** provisoire, pour debug *************
    'MsgBox "Le premier SUB-TOTAL est: " & SousTotal, vbInformation, "resultat"
    Clipboard.SetText CStr(SousTotal), 1 '  <-------- rempli le presse-papier avec la valeur du premier sous-total de la fenêtre fond bleu foncé
    '********** provisoire, pour debug *************
    MsgBox "Le contenu du presse-papier est maintenant : " &  Clipboard.GetText() , vbInformation, "Contenu du presse-papier"
     
    End Sub
    Après avoir lancé cette macro, essais de coller le contenu du presse-papier là ou tu veux.
    Si c'est bon, tu peux éventuellement mettre en commentaire la ligne N°25, bien quelle te permet de vérifier si le presse-papier contient bien la bonne récupération, a toi de voir.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  6. #26
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut

    Après lecture sur le site que tu as indiqué plus haut: http://docs.attachmate.com/reflectio...find_field.htm
    J'en suis arrivé là (code macro commentée)
    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
    Sub copiersoustotal()
        Dim screenText As String
     
        With Session
    		' récupération de tout le texte de la fenêtre Reflexion IBM 3270 Terminal
            screenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)
        End With
     
    	'screenText contient le texte de la fenêtre Reflexion IBM 3270 Terminal
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine) 'découpe le texte en un tableau de chaque ligne
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then ' recherche la présence du mot SUB-TOTAL dans la ligne N°T
            ' SUB-TOTAL est présent dans la ligne
     
    		'SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
    		' la méthode Replace(TblCtnFichier(T), "SUB-TOTAL", "") supprime le mot SUB-TOTAL de la ligne,
    		'             il ne reste que la valeur de SUB-TOTAL, entouré de caractères espaces
    		' la méthode Trim( text de la ligne ) supprime tout les caractères espaces à droite et à gauche,
    		'             il ne reste que le littéral valeur de SUB-TOTAL
    		' la méthode CSng(valeur littéral de SUB-TOTAL) convertit d'un littéral vers type numérique Single
    		' en fait la dernière méthode n'est pas utile pour ce cas d'utilisation, on peut donc écrire la commande comme ceci
    		SousTotal = Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", ""))
            Exit For
        End If
    Next T
     
    Clipboard.SetText CStr(SousTotal), 1 '  <-------- rempli le presse-papier avec la valeur du premier sous-total de la fenêtre fond bleu foncé
    '********** provisoire, pour debug *************
    MsgBox "Le contenu du presse-papier est maintenant : " &  Clipboard.GetText() , vbInformation, "Contenu du presse-papier"
     
    End Sub
    Le même sans commentaire
    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
    Sub copiersoustotal()
        Dim screenText As String, TblCtnFichier() As String, T As Integer, SousTotal As Single
     
        With Session
            screenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)
        End With
    	TblCtnFichier = Split(screenText, vbNewLine)
    	For T = 0 To UBound(TblCtnFichier) - 1
    		If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
    			SousTotal = Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", ""))
    			Exit For
    		End If
    	Next T
    	Clipboard.SetText CStr(SousTotal), 1
    End Sub
    Donc après avoir lancé la macro, le presse-papier contient la valeur du premier sous total, tu peux le coller la ou tu veux.
    A l'occasion tu me dis si c'est bon
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  7. #27
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    J'ai la meme erreur pour les deux dernier code

    Nom : Capture7.JPG
Affichages : 164
Taille : 100,2 Ko

    je l'ai essayé plusieurs fois sans succes.

  8. #28
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    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
    Sub copiersoustotal()
        Dim screenText As String, TblCtnFichier() As String, T As Integer, SousTotal As String
     
        With Session
            screenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)
        End With
    	TblCtnFichier = Split(screenText, vbNewLine)
    	For T = 0 To UBound(TblCtnFichier) - 1
    		If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
    			SousTotal = Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", ""))
    			Exit For
    		End If
    	Next T
    	Session.SetClipboardText SousTotal
    End Sub
    J'ai remplacé la dernière ligne, c'est curieux car tout n'est donc pas du vrai VB6, il y a un mixte avec le langage du programme/éditeur Reflexion IBM 3270 Terminal, ce qui fait que l'on ne sait pas toujours lequel employer.
    Session.SetClipboardText SousTotal en VB Reflexion IBM 3270 Terminal.
    Clipboard.SetText CStr(SousTotal), 1 en VB6.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  9. #29
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Ici je n'ai pas de message d'erreur mais j'ai rien de copier dans clipboard.

  10. #30
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    dans ce
    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
    Sub copiersoustotal()
    ' récupération du texte de la fenêtre fond bleu foncé
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     'screenText contient le texte de la fenêtre fond bleu foncé
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine)
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
            SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
            Exit For
        End If
    Next T
    '********** provisoire, pour debug *************
    MsgBox "Le premier SUB-TOTAL est: " & SousTotal, vbInformation, "resultat"
    End Sub

    que tu m'as écris le messagebox fonctionne toujours... y a-t-il un moyen de copier le résultat qui est afficher?

    le résultat de cette ligne " & SousTotal, vbInformation, "resultat"

  11. #31
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut
    Suite a la lecture de:
    http://docs.attachmate.com/reflectio.../ibm/index.htm rechercherGetDisplayTextGetDisplayText methodExample
    Example

    This function returns a string containing the contents of the current host screen. The GetDisplayText method is used to get screen text. The DisplayColumns and DisplayRows properties are used to determine the current display size.

    Function GetScreenText() As String

    With Session

    GetScreenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)

    End With

    End Function
    http://manualzz.com/doc/4142031/prog...sic-user-guide page 42 chapitre 36
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub ClipboardDemo()
    '
    ' ClipboardDemo Macro
    ' Macro created <today's date> by <your name>
    '
    ' Copy screen text to the Clipboard
    '
    Dim displayText As String
    displayText = Session.GetDisplayText(1, 1, 80)
    Session.SetClipboardText (displayText)
    MsgBox "Screen text has been copied to the Clipboard."
    End Sub

    Donc une dernière tentative
    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
    Sub copiersoustotal()
        Dim screenText As String, TblCtnFichier() As String, T As Integer, SousTotal As String
     
        With Session
            screenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)
        End With
     
    	'************************ a supprimer quand tout Ok ***********************
    	MsgBox "contenu de screenText: " & screenText, vbInformation, "resultat"
    	'**************************************************************************
     
    	TblCtnFichier = Split(screenText, vbNewLine)
    	For T = 0 To UBound(TblCtnFichier) - 1
    		If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
    			SousTotal = Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", ""))
    			Exit For
    		End If
    	Next T
     
    	'************************ a supprimer quand tout Ok ***********************
    	MsgBox "Le premier SUB-TOTAL est: " & SousTotal, vbInformation, "resultat"
    	'**************************************************************************
     
    	Session.SetClipboardText(SousTotal)
    End Sub
    J'ai rajouté les ( ) dans la partie Session.SetClipboardText
    Tu devrais avoir un premier msgbox du texte entier, puis un deuxième avec la valeur de SouTotal et ......... (l’espoir fait vivre) le SousTotal disponible dans le presse-papier.
    Si cela ne fonctionne pas, je ne saurai plus t'aider, sinon te faire perdre du temps .
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  12. #32
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Il y a eu un petit delai... des vacances c'est agréable.


    Ca n'a pas fonctionné mais merci pour ton temps... je vais continuer d'essayer de faire fonctionné ca a partir de tes macros... Il ne manqait pas grand chose.

    Merci encore.

  13. #33
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    j'ai fait une toute petite modification a ta macro.

    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
    Sub copiersoustotal()
    ' récupération du texte de la fenêtre fond bleu foncé
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     'screenText contient le texte de la fenêtre fond bleu foncé
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine)
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
            SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
            Exit For
        End If
    Next T
    '********** provisoire, pour debug *************
    MsgBox "Le premier SUB-TOTAL est: " & SousTotal, vbInformation, "resultat"
    Session.SetClipboardText (SousTotal) ' <========== la modification =========
    End Sub

    Ça fonctionne, il copie bien le sous total comme ça MAIS quand je met le 'Msgbox en commentaire il ne fonctionne plus... pourtant soustotal ne dépend pas de cette ligne il me semble.

  14. #34
    Candidat au Club
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2018
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2018
    Messages : 20
    Points : 3
    Points
    3
    Par défaut
    Bon ca y est c'est comme ca que ca fonctionne bien, pour l'instant du moins... je vais voir a grande échelle si c'est encore bon.

    Merci Encore

    le resultat final

    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
    Sub copiersoustotal()
    ' récupération du texte de la fenêtre fond bleu foncé
        Dim screenText As String
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
     'screenText contient le texte de la fenêtre fond bleu foncé
    Dim TblCtnFichier() As String, T As Integer, SousTotal As Single
     
    TblCtnFichier = Split(screenText, vbNewLine)
    For T = 0 To UBound(TblCtnFichier) - 1
        If InStr(TblCtnFichier(T), "SUB-TOTAL") Then
            SousTotal = CSng(Trim(Replace(TblCtnFichier(T), "SUB-TOTAL", "")))
            Exit For
        End If
     
    Next T
    Session.SetClipboardText (SousTotal)
     
     
    End Sub

  15. #35
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        With Session
            .SetSelectionStartPos 1, 1
            .ExtendSelectionRect 17, 63
            .CopySelection
            screenText = .GetClipboardText
        End With
    Si la fenêtre du texte a récupérer est toujours de la même structure, nombre de lignes nombre de colonnes, tu n'auras pas de problème, mais si cela devait changer, il faudrait utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        With Session
            screenText = .GetDisplayText(1, 1, .DisplayColumns * .DisplayRows)
        End With
    pour capturer l’entièreté du texte présent dans la fenêtre, car ton SUB-TOTAL pourrait être au delà de la ligne 17 et colonne 63.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Débutant cherche un tutos la lecture d'un ficier
    Par maximenet dans le forum ASP.NET
    Réponses: 2
    Dernier message: 04/04/2006, 13h43
  2. [Débutant] cherche vcl.h
    Par Seb87 dans le forum C
    Réponses: 4
    Dernier message: 04/01/2006, 14h08
  3. cherche comment copier le champ vers une autre champ
    Par khier dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 01/07/2005, 12h20
  4. Réponses: 2
    Dernier message: 29/04/2005, 09h32
  5. [débutant] cherche a copier une HashMap
    Par mathieublanc13 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 09/05/2004, 14h33

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