Bonjour,
je souhaite vider mon presse papier. j'ai cette macro.
mais comment s'utilise-t-elle?
dois-je la mettre dans un module à part ?
elle s'execute quand ? tout le temps ? à ma demande ? lors de la fin d'un
processus qui nécessite le vidage ??
Merci de vos réponse.
YANN
-----
Private Declare Function OpenClipboard Lib "user32" _
(ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function CloseClipboard Lib "user32" () As Long
'Si tu écris ta macro dans un autre module, tu devras enlever le mot Private
en début de chacune des déclaration des API
Sub Vider_Presse_Papier()
OpenClipboard 0
EmptyClipboard
CloseClipboard
End Sub
-----
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Lorsque tu en as de besoin dans la procédure de ton choix au moment que tu choisiras, tu appelles la procédure simplement par son nom.
Vider_Presse_Papier
"Sunburn" a écrit dans le message de groupe de discussion : Bonjour, je souhaite vider mon presse papier. j'ai cette macro. mais comment s'utilise-t-elle? dois-je la mettre dans un module à part ? elle s'execute quand ? tout le temps ? à ma demande ? lors de la fin d'un processus qui nécessite le vidage ?? Merci de vos réponse. YANN
----- Private Declare Function OpenClipboard Lib "user32" _ (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long Private Declare Function CloseClipboard Lib "user32" () As Long
'Si tu écris ta macro dans un autre module, tu devras enlever le mot Private en début de chacune des déclaration des API
Sub Vider_Presse_Papier() OpenClipboard 0 EmptyClipboard CloseClipboard End Sub -----
Lorsque tu en as de besoin dans la procédure de ton choix
au moment que tu choisiras, tu appelles la procédure
simplement par son nom.
Vider_Presse_Papier
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : DFE0B068-B15D-466E-9262-BC023ECA9D04@microsoft.com...
Bonjour,
je souhaite vider mon presse papier. j'ai cette macro.
mais comment s'utilise-t-elle?
dois-je la mettre dans un module à part ?
elle s'execute quand ? tout le temps ? à ma demande ? lors de la fin d'un
processus qui nécessite le vidage ??
Merci de vos réponse.
YANN
-----
Private Declare Function OpenClipboard Lib "user32" _
(ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function CloseClipboard Lib "user32" () As Long
'Si tu écris ta macro dans un autre module, tu devras enlever le mot Private
en début de chacune des déclaration des API
Sub Vider_Presse_Papier()
OpenClipboard 0
EmptyClipboard
CloseClipboard
End Sub
-----
Lorsque tu en as de besoin dans la procédure de ton choix au moment que tu choisiras, tu appelles la procédure simplement par son nom.
Vider_Presse_Papier
"Sunburn" a écrit dans le message de groupe de discussion : Bonjour, je souhaite vider mon presse papier. j'ai cette macro. mais comment s'utilise-t-elle? dois-je la mettre dans un module à part ? elle s'execute quand ? tout le temps ? à ma demande ? lors de la fin d'un processus qui nécessite le vidage ?? Merci de vos réponse. YANN
----- Private Declare Function OpenClipboard Lib "user32" _ (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long Private Declare Function CloseClipboard Lib "user32" () As Long
'Si tu écris ta macro dans un autre module, tu devras enlever le mot Private en début de chacune des déclaration des API
Sub Vider_Presse_Papier() OpenClipboard 0 EmptyClipboard CloseClipboard End Sub -----
Sunburn
re, Ok, je te remercie. mais quel type de procédure stocke des choses dans le presse papier ?? ce genre là ?? merci. YANN ---- Sub Import30() 'supprimer les anciennes lignes Application.ScreenUpdating = False Sheets("30").Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next 'ajoute les lignes Sheets("30").Select Range("DETAIL30").Select For Each C In Worksheets("GA14").Range("A2:A1000") n1 = Mid(C, 1, 1) n2 = Mid(C, 1, 3) n3 = Mid(C, 1, 5) n4 = Mid(C, 1, 4) n5 = Mid(C, 1, 4) n6 = Mid(C, 1, 5) If n1 = 3 Or n2 = 603 Or n3 = 68173 Or n4 = 6873 Or n5 = 7873 Or n6 = 78173 Then Selection.EntireRow.Insert Shift:=xlDown ActiveCell.Offset(0, 0).Select Range(C, C.Offset(0, 255).End(xlToLeft)).Copy ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Next End Sub -----
ou
---- Sub CalculBalLive() 'supprime la colonne C Sheets("GA14").Columns("C:C").Delete Shift:=xlToLeft 'calcul de la balance en temps réel Sheets("GA10").Unprotect Sheets("GA14").Unprotect If Sheets("GA14").Range("A3") <> "" Then Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Clear End If Sheets("GA10").Range("A3", "F" & Sheets("GA10").Range("A65535").End(xlUp).Row).Copy Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0) For Each I In Sheets(Array("GA11", "GA12", "GA13")) If I.Range("C12") <> "" Then Départ = Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row I.Range("C12", "F" & I.Range("C65535").End(xlUp).Row).Copy Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0) I.Range("H12", "H" & I.Range("H65535").End(xlUp).Row).Copy Sheets("GA14").Range("B" & Départ) End If Next Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Interior.ColorIndex = xlNone Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"), Order1:=xlAscending J = 3 Ligne = 2 Do While Range("A" & J).Row < Range("A65535").End(xlUp).Offset(1, 0).Row If Range("A" & J) <> Range("A" & J - 1) And Range("A" & J) <> Range("A" & Ligne) Then Ligne = J End If If Range("A" & J) = Range("A" & Ligne) And J > Ligne Then Range("C" & Ligne) = Range("C" & Ligne) + Range("C" & J) Range("D" & Ligne) = Range("D" & Ligne) + Range("D" & J) Range("B" & J).EntireRow.ClearContents End If If Range("A" & J) <> Range("A" & J + 1) Then If Range("C" & Ligne) < Range("D" & Ligne) Then Range("D" & Ligne) = Range("D" & Ligne) - Range("C" & Ligne) Range("C" & Ligne) = "" End If If Range("C" & Ligne) > Range("D" & Ligne) Then Range("C" & Ligne) = Range("C" & Ligne) - Range("D" & Ligne) Range("D" & Ligne) = "" End If If Range("C" & Ligne) = Range("D" & Ligne) Then Range("C" & Ligne) = "" Range("D" & Ligne) = "" End If End If J = J + 1 Loop Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"), Order1:=xlAscending Sheets("GA14").Range("A" & Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row, "A65535").EntireRow.Delete 'insertion de la colonne C pour la présentation Sheets("GA14").Columns("C:C").Insert Shift:=xlToRight Sheets("GA14").Columns("C:C").ColumnWidth = 3 Sheets("GA10").Protect 'Sheets("GA14").Protect 'mettre un quadrillage à blanc sur GA14 Sheets("GA14").Cells.Borders(xlDiagonalDown).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlDiagonalUp).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeLeft).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeTop).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeBottom).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeRight).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlInsideVertical).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlInsideHorizontal).LineStyle = xlNone 'verouiller l'onglet GA14 Sheets("GA14").Cells.Locked = True Sheets("GA14").Cells.FormulaHidden = False Sheets("GA14").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True Sheets("GA14").EnableSelection = xlNoRestrictions ' End Sub -----
re,
Ok, je te remercie.
mais quel type de procédure stocke des choses dans le presse papier ??
ce genre là ??
merci.
YANN
----
Sub Import30()
'supprimer les anciennes lignes
Application.ScreenUpdating = False
Sheets("30").Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete
Next
'ajoute les lignes
Sheets("30").Select
Range("DETAIL30").Select
For Each C In Worksheets("GA14").Range("A2:A1000")
n1 = Mid(C, 1, 1)
n2 = Mid(C, 1, 3)
n3 = Mid(C, 1, 5)
n4 = Mid(C, 1, 4)
n5 = Mid(C, 1, 4)
n6 = Mid(C, 1, 5)
If n1 = 3 Or n2 = 603 Or n3 = 68173 Or n4 = 6873 Or n5 = 7873 Or n6 = 78173
Then
Selection.EntireRow.Insert Shift:=xlDown
ActiveCell.Offset(0, 0).Select
Range(C, C.Offset(0, 255).End(xlToLeft)).Copy
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Select
End If
Next
End Sub
-----
ou
----
Sub CalculBalLive()
'supprime la colonne C
Sheets("GA14").Columns("C:C").Delete Shift:=xlToLeft
'calcul de la balance en temps réel
Sheets("GA10").Unprotect
Sheets("GA14").Unprotect
If Sheets("GA14").Range("A3") <> "" Then
Sheets("GA14").Range("A3", "F" &
Sheets("GA14").Range("A65535").End(xlUp).Row).Clear
End If
Sheets("GA10").Range("A3", "F" &
Sheets("GA10").Range("A65535").End(xlUp).Row).Copy
Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0)
For Each I In Sheets(Array("GA11", "GA12", "GA13"))
If I.Range("C12") <> "" Then
Départ = Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row
I.Range("C12", "F" & I.Range("C65535").End(xlUp).Row).Copy
Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0)
I.Range("H12", "H" & I.Range("H65535").End(xlUp).Row).Copy
Sheets("GA14").Range("B" & Départ)
End If
Next
Sheets("GA14").Range("A3", "F" &
Sheets("GA14").Range("A65535").End(xlUp).Row).Interior.ColorIndex = xlNone
Sheets("GA14").Range("A3", "F" &
Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"),
Order1:=xlAscending
J = 3
Ligne = 2
Do While Range("A" & J).Row < Range("A65535").End(xlUp).Offset(1, 0).Row
If Range("A" & J) <> Range("A" & J - 1) And Range("A" & J) <> Range("A" &
Ligne) Then
Ligne = J
End If
If Range("A" & J) = Range("A" & Ligne) And J > Ligne Then
Range("C" & Ligne) = Range("C" & Ligne) + Range("C" & J)
Range("D" & Ligne) = Range("D" & Ligne) + Range("D" & J)
Range("B" & J).EntireRow.ClearContents
End If
If Range("A" & J) <> Range("A" & J + 1) Then
If Range("C" & Ligne) < Range("D" & Ligne) Then
Range("D" & Ligne) = Range("D" & Ligne) - Range("C" & Ligne)
Range("C" & Ligne) = ""
End If
If Range("C" & Ligne) > Range("D" & Ligne) Then
Range("C" & Ligne) = Range("C" & Ligne) - Range("D" & Ligne)
Range("D" & Ligne) = ""
End If
If Range("C" & Ligne) = Range("D" & Ligne) Then
Range("C" & Ligne) = ""
Range("D" & Ligne) = ""
End If
End If
J = J + 1
Loop
Sheets("GA14").Range("A3", "F" &
Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"),
Order1:=xlAscending
Sheets("GA14").Range("A" &
Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row,
"A65535").EntireRow.Delete
'insertion de la colonne C pour la présentation
Sheets("GA14").Columns("C:C").Insert Shift:=xlToRight
Sheets("GA14").Columns("C:C").ColumnWidth = 3
Sheets("GA10").Protect
'Sheets("GA14").Protect
'mettre un quadrillage à blanc sur GA14
Sheets("GA14").Cells.Borders(xlDiagonalDown).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlDiagonalUp).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlEdgeLeft).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlEdgeTop).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlEdgeBottom).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlEdgeRight).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlInsideVertical).LineStyle = xlNone
Sheets("GA14").Cells.Borders(xlInsideHorizontal).LineStyle = xlNone
'verouiller l'onglet GA14
Sheets("GA14").Cells.Locked = True
Sheets("GA14").Cells.FormulaHidden = False
Sheets("GA14").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("GA14").EnableSelection = xlNoRestrictions
'
End Sub
-----
re, Ok, je te remercie. mais quel type de procédure stocke des choses dans le presse papier ?? ce genre là ?? merci. YANN ---- Sub Import30() 'supprimer les anciennes lignes Application.ScreenUpdating = False Sheets("30").Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next 'ajoute les lignes Sheets("30").Select Range("DETAIL30").Select For Each C In Worksheets("GA14").Range("A2:A1000") n1 = Mid(C, 1, 1) n2 = Mid(C, 1, 3) n3 = Mid(C, 1, 5) n4 = Mid(C, 1, 4) n5 = Mid(C, 1, 4) n6 = Mid(C, 1, 5) If n1 = 3 Or n2 = 603 Or n3 = 68173 Or n4 = 6873 Or n5 = 7873 Or n6 = 78173 Then Selection.EntireRow.Insert Shift:=xlDown ActiveCell.Offset(0, 0).Select Range(C, C.Offset(0, 255).End(xlToLeft)).Copy ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Next End Sub -----
ou
---- Sub CalculBalLive() 'supprime la colonne C Sheets("GA14").Columns("C:C").Delete Shift:=xlToLeft 'calcul de la balance en temps réel Sheets("GA10").Unprotect Sheets("GA14").Unprotect If Sheets("GA14").Range("A3") <> "" Then Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Clear End If Sheets("GA10").Range("A3", "F" & Sheets("GA10").Range("A65535").End(xlUp).Row).Copy Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0) For Each I In Sheets(Array("GA11", "GA12", "GA13")) If I.Range("C12") <> "" Then Départ = Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row I.Range("C12", "F" & I.Range("C65535").End(xlUp).Row).Copy Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0) I.Range("H12", "H" & I.Range("H65535").End(xlUp).Row).Copy Sheets("GA14").Range("B" & Départ) End If Next Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Interior.ColorIndex = xlNone Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"), Order1:=xlAscending J = 3 Ligne = 2 Do While Range("A" & J).Row < Range("A65535").End(xlUp).Offset(1, 0).Row If Range("A" & J) <> Range("A" & J - 1) And Range("A" & J) <> Range("A" & Ligne) Then Ligne = J End If If Range("A" & J) = Range("A" & Ligne) And J > Ligne Then Range("C" & Ligne) = Range("C" & Ligne) + Range("C" & J) Range("D" & Ligne) = Range("D" & Ligne) + Range("D" & J) Range("B" & J).EntireRow.ClearContents End If If Range("A" & J) <> Range("A" & J + 1) Then If Range("C" & Ligne) < Range("D" & Ligne) Then Range("D" & Ligne) = Range("D" & Ligne) - Range("C" & Ligne) Range("C" & Ligne) = "" End If If Range("C" & Ligne) > Range("D" & Ligne) Then Range("C" & Ligne) = Range("C" & Ligne) - Range("D" & Ligne) Range("D" & Ligne) = "" End If If Range("C" & Ligne) = Range("D" & Ligne) Then Range("C" & Ligne) = "" Range("D" & Ligne) = "" End If End If J = J + 1 Loop Sheets("GA14").Range("A3", "F" & Sheets("GA14").Range("A65535").End(xlUp).Row).Sort Key1:=Range("A3"), Order1:=xlAscending Sheets("GA14").Range("A" & Sheets("GA14").Range("A65535").End(xlUp).Offset(1, 0).Row, "A65535").EntireRow.Delete 'insertion de la colonne C pour la présentation Sheets("GA14").Columns("C:C").Insert Shift:=xlToRight Sheets("GA14").Columns("C:C").ColumnWidth = 3 Sheets("GA10").Protect 'Sheets("GA14").Protect 'mettre un quadrillage à blanc sur GA14 Sheets("GA14").Cells.Borders(xlDiagonalDown).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlDiagonalUp).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeLeft).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeTop).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeBottom).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlEdgeRight).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlInsideVertical).LineStyle = xlNone Sheets("GA14").Cells.Borders(xlInsideHorizontal).LineStyle = xlNone 'verouiller l'onglet GA14 Sheets("GA14").Cells.Locked = True Sheets("GA14").Cells.FormulaHidden = False Sheets("GA14").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True Sheets("GA14").EnableSelection = xlNoRestrictions ' End Sub -----
michdenis
| mais quel type de procédure stocke des choses dans le presse papier ?? |ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image... dans le presse-papier ... chaque fois que tu fais la commande Édition - copier/couper ->coller ou leur équivalent Raccourci clavier. Il en va de soi pour les commandes VBA qui sont le pendant des commandes de la feuille de calcul. L'enregistreur de macro peut t'aider à les identifier pendant que tu manipules les de l'interface de calcul. Quand tu effaces le presse-papier, tu ne touches pas aux variables que tu as définies.
| mais quel type de procédure stocke des choses dans le presse papier ??
|ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image...
dans le presse-papier ... chaque fois que tu fais
la commande Édition - copier/couper ->coller ou leur équivalent
Raccourci clavier. Il en va de soi pour les commandes VBA qui sont
le pendant des commandes de la feuille de calcul. L'enregistreur de
macro peut t'aider à les identifier pendant que tu manipules les
de l'interface de calcul. Quand tu effaces le presse-papier, tu ne
touches pas aux variables que tu as définies.
| mais quel type de procédure stocke des choses dans le presse papier ?? |ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image... dans le presse-papier ... chaque fois que tu fais la commande Édition - copier/couper ->coller ou leur équivalent Raccourci clavier. Il en va de soi pour les commandes VBA qui sont le pendant des commandes de la feuille de calcul. L'enregistreur de macro peut t'aider à les identifier pendant que tu manipules les de l'interface de calcul. Quand tu effaces le presse-papier, tu ne touches pas aux variables que tu as définies.
Sunburn
re, ok je te remercie beaucoup, j'y comprend beaucoup mieux. donc il faut que je le mette en fin de mes procédures où il y a des copier-coller. merci. YANN
"michdenis" a écrit :
| mais quel type de procédure stocke des choses dans le presse papier ?? |ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image... dans le presse-papier ... chaque fois que tu fais la commande Édition - copier/couper ->coller ou leur équivalent Raccourci clavier. Il en va de soi pour les commandes VBA qui sont le pendant des commandes de la feuille de calcul. L'enregistreur de macro peut t'aider à les identifier pendant que tu manipules les de l'interface de calcul. Quand tu effaces le presse-papier, tu ne touches pas aux variables que tu as définies.
re,
ok je te remercie beaucoup, j'y comprend beaucoup mieux.
donc il faut que je le mette en fin de mes procédures où il y a des
copier-coller.
merci.
YANN
"michdenis" a écrit :
| mais quel type de procédure stocke des choses dans le presse papier ??
|ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image...
dans le presse-papier ... chaque fois que tu fais
la commande Édition - copier/couper ->coller ou leur équivalent
Raccourci clavier. Il en va de soi pour les commandes VBA qui sont
le pendant des commandes de la feuille de calcul. L'enregistreur de
macro peut t'aider à les identifier pendant que tu manipules les
de l'interface de calcul. Quand tu effaces le presse-papier, tu ne
touches pas aux variables que tu as définies.
re, ok je te remercie beaucoup, j'y comprend beaucoup mieux. donc il faut que je le mette en fin de mes procédures où il y a des copier-coller. merci. YANN
"michdenis" a écrit :
| mais quel type de procédure stocke des choses dans le presse papier ?? |ce genre là ??
Essentiellement ce sont les commandes qui envoient des données, image... dans le presse-papier ... chaque fois que tu fais la commande Édition - copier/couper ->coller ou leur équivalent Raccourci clavier. Il en va de soi pour les commandes VBA qui sont le pendant des commandes de la feuille de calcul. L'enregistreur de macro peut t'aider à les identifier pendant que tu manipules les de l'interface de calcul. Quand tu effaces le presse-papier, tu ne touches pas aux variables que tu as définies.