Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55, ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " & "&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler, copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23mJ9nVnrFHA.3352@TK2MSFTNGP14.phx.gbl...
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
u1Y6eTdrFHA.3392@TK2MSFTNGP11.phx.gbl...
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23mJ9nVnrFHA.3352@TK2MSFTNGP14.phx.gbl...
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
u1Y6eTdrFHA.3392@TK2MSFTNGP11.phx.gbl...
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) " &
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" a écrit dans le message de news:
%
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" a écrit dans le message de news:Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23qcdmmorFHA.2876@TK2MSFTNGP12.phx.gbl...
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uhXbSvnrFHA.1168@TK2MSFTNGP10.phx.gbl...
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23mJ9nVnrFHA.3352@TK2MSFTNGP14.phx.gbl...
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
u1Y6eTdrFHA.3392@TK2MSFTNGP11.phx.gbl...
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" a écrit dans le message de news:
%
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" a écrit dans le message de news:Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" a écrit dans le message de news:
%
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" a écrit dans le message de news:Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23qcdmmorFHA.2876@TK2MSFTNGP12.phx.gbl...
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uhXbSvnrFHA.1168@TK2MSFTNGP10.phx.gbl...
Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
%23mJ9nVnrFHA.3352@TK2MSFTNGP14.phx.gbl...
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
u1Y6eTdrFHA.3392@TK2MSFTNGP11.phx.gbl...
Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
O5to%23ScrFHA.2924@TK2MSFTNGP10.phx.gbl...
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
uCjViLcrFHA.3444@TK2MSFTNGP12.phx.gbl...
Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" <pellet15@videotron.ca> a écrit dans le message de news:
eTo3$%23brFHA.3356@TK2MSFTNGP10.phx.gbl...
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
Bonjour Daniel,
Explique toi clairement :
Est-ce que ta macro doit s'exécuter pour toutes les feuilles d'un classeur
? Seulement pour certaines feuilles si oui lesquels ? où
pour seulement une feuille ?
Comme ta macro est dans un autre classeur toujours ouvert (Est-ce ton
perso.xls ? sinon comment appelles-tu la macro ? ), Est-ce que
ta macro doit s'exécuter pour tous les classeurs que tu ouvres ou
seulement pour un ?
Il ne faut pas être timide... si tu retiens de l'information, il est
difficile de t'aiguiller correctement.
Salutations!
"Daniel" a écrit dans le message de news:
%
Rebonsoir MichDenis
La macros est dans un autre fichier, qui est toujour ouvert et
dans l'option CTRL-G comme racourci.
Le deuxième fichier avec le quel je veut rechercher la donné
(dans colonne H15:H55) à plusieur onglet avec des noms différent.
Si je met "feuile1" cela ne fonctionnera pas ???
Comment m'y prendre ??
Merci
"michdenis" a écrit dans le message de news:Bonjour Daniel,
Observe lorsque la fenêtre VBE(visual basic editor) est ouverte
dans la section gauche de la fenetre, il y a l'explorateur de projet où
tu peux afficher l'arborescence des objets de chaque
classeur ouvert.
Les feuilles sont identifiées de cette manière :
Feuil1(Feuil1)
Feuil1 = Est la propriété Name de l'objet et ne se modifie pas même si le
nom de l'onglet est modifé.
(Feuil1) représente le nom de l'onglet.
Dans le code tu as le choix, tu peux utiliser soit :
With Worksheets("Feuil1") ' nom de l'onglet de la feuille
OU
With Feuil1 'Nom de l'objet Feuille
à toi d'adapter la procédure en utilisant soit le nom de l'onglet de ta
feuille ou propriété "name" de l'objet feuille.
Salutations!
"Daniel" a écrit dans le message de news:
%
Bonsoir MichDenis
Un petit problème ces que le nom de la feuille varie ,
il faut utiliser le nom de la feuille qui est active au départ de la
macro.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel,
Tu débutes ta macro comme ceci... et tu ajoutes toute ta macro par suite
sans le End Sub ...
Prend le temps de définir le nom de la feuille où ta macro doit
s'appliquer.
'----------------------------------------------
Sub Traduire_CamionTest
Dim Ligne, Valeur
Dim MyDataObject As DataObject
Dim NomFeuille As String
NomFeuille = ActiveSheet.Name
Application.ScreenUpdating = False
With Worksheets("Feuil1") ' à déterminer
.Activate
If Not Intersect(ActiveCell, .Range("H15:H55")) Is Nothing Then
'tu ajoutes l'intégralité de ta macro
End if
End with
sheets(NomFeuille).select
End Sub
'----------------------------------------------
Salutatioins!
"Daniel" a écrit dans le message de news:
O5to%
Bonsoir Michdenis
Je me suis pas assez explique,
le départ de la macros ce fait quand ont fait les touches CRTL-G
mais je veut être sur que l'on exécute la macros quand une des cellules
en H15 @ H55 est sélectionné et qu'elle contienne des donné.
Merci
"michdenis" a écrit dans le message de news:Bonsoir Daniel
Dans le module feuille de la feuille où l'action doit se dérouler,
copier
ceci :
à chaque fois que tu va sélectionner une cellule dans la plage H15:H55,
ta
macro va s'exécuter d'elle-même .
'----------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("h15:H55")) Is Nothing Then
Application.EnableEvents = False
call Traduire_CamionTest
Application.EnableEvents = True
End If
End Sub
'---------------------------------
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub
'---------------------------------
Salutations"
"Daniel" a écrit dans le message de news:
eTo3$%
Bonjour à tous
J'ai une macro que je voudrait qui s'exécute seulement
si la cellule active est une des cellules comprise
entre H15 @ H55 et qui n'est pas vide.
Merci :-)
Voici la macro
Sub Traduire_CamionTest()
Dim Ligne, Valeur
Dim MyDataObject As DataObject
ActiveCell.Offset(0, 3).Select
Ligne = ActiveCell.Row
Range("k" & Ligne).FormulaLocal = "=""N"" & GAUCHE(H" & Ligne & ",2) "
&
"&
"" "" & STXT(H" & Ligne & ",4,2) & ""."" & STXT(H" & Ligne & ",6,3) " &
"&
"" "" & GAUCHE(SUBSTITUE(I" & Ligne & ",""-"",""W""),3)" & "& "" "" &
STXT(I" & Ligne & ",5,2) & ""."" & STXT(I" & Ligne & ",7,3)"
Set MyDataObject = New DataObject
MyDataObject.SetText Range("K" & Ligne).Value
MyDataObject.PutInClipboard
Selection.ClearContents
ActiveCell.Offset(1, -3).Select
MyAppID = Shell("C:Program FilesGarminnRoutenRoute.exe", 1)
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Application.ScreenUpdating = False
SendKeys "^g", True
SendKeys "^v", True
SendKeys "{enter}", True
Set Pressp = Nothing
Application.ScreenUpdating = True
End Sub