Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Selectionner une ligne entiere si valeur en colonne A

9 réponses
Avatar
JBF
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à
la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF

9 réponses

Avatar
Fredo P.
Bon jour
Private Sub Worksheet_Change(ByVal Target As Range)
If [A32] <> "" Or [A16] <> "" Then
Rows(Target.Row).Select
End If
End Sub
"JBF" a écrit dans le message de
news:%
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à
la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF




Avatar
Daniel.C
Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module
de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à la
ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait toute
la ligne 16.

Merci à vous

JBF


Avatar
JBF
merci à vous deux.
J'essaye ça de suite.

JBF


"JBF" a écrit dans le message de news:
%
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à
la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF



Avatar
JBF
Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi cette
macro me met un message d'erreur sur la 9eme ligne : Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque changement de
valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de facture est
insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#, 167.25, _
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis en
facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module de
la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant
à la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de
la ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF






Avatar
Daniel.C
Si tu mets :
Rows("2:2").Select
c'est la ligne 2 de la feuille qui contient la macro que tu cherches à
sélectionner, pas la ligne 2 de la feuille active. Remplace par :
With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
End With
Je n'ai pas regarddé le reste du code. Tu peux avoir le même problème
plus loin.
Daniel


Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi cette
macro me met un message d'erreur sur la 9eme ligne : Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque changement de
valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de facture est
insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#, 167.25, _
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis en
facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module de
la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à
la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF








Avatar
Daniel.C
Plus précisément :
Si tu mets :

Sheets("Attente de reglement").Select
Rows("2:2").Select

c'est la ligne 2 de la feuille qui contient la macro que tu cherches à
sélectionner, pas la ligne 2 de la feuille active. Remplace par :

With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
End With

Je n'ai pas regarddé le reste du code. Tu peux avoir le même problème
plus loin.
Daniel


Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi cette
macro me met un message d'erreur sur la 9eme ligne : Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque changement de
valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de facture est
insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#, 167.25, _
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis en
facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module de
la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant à
la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de la
ligne 32 si A32<>"". De même si par exemple A16<>"" ça sélectionnerait
toute la ligne 16.

Merci à vous

JBF








Avatar
JBF
Merci bcp pour ta réponse.

J'ai essayé de faire ce que tu me recommandes mais ton conseil ne fonctionne
pas. Ou alors ça vient d'autre chose comme tu le disais.
J'ai donc essayé de faire de la façon suivante :

If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
.Selection.Insert Shift:=xlDown
.Range("A1").Select
End With

mais ça ne marche pas mieux! J'ai : Erreur d'execution '438' : Propriété ou
méthode non gérée par cette objet qui surligne : .Selection.Insert
Shift:=xlDown.

Je suppose donc qu'avec la méthode "With Sheets()" ce n'est pas la bonne
formulation que j'ai utilisé pour insérer les cellules copiées!

Merci pour ta précieuse aide.

JBF

"Daniel.C" a écrit dans le message de news:
%
Plus précisément :
Si tu mets :

Sheets("Attente de reglement").Select
Rows("2:2").Select

c'est la ligne 2 de la feuille qui contient la macro que tu cherches à
sélectionner, pas la ligne 2 de la feuille active. Remplace par :

With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
End With

Je n'ai pas regarddé le reste du code. Tu peux avoir le même problème plus
loin.
Daniel


Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi cette
macro me met un message d'erreur sur la 9eme ligne : Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a
échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque changement
de valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de facture
est insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#, 167.25,
_
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis en
facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module
de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne
correspondant à la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de
la ligne 32 si A32<>"". De même si par exemple A16<>"" ça
sélectionnerait toute la ligne 16.

Merci à vous

JBF












Avatar
Daniel.C
Enlève le point devant "Selection". En effet, "Selection" est un objet
un non une propriété de la feuille "Attente de reglement". Ce qui est
sélectionné, c'est Sheets("Attente de reglement").Rows("2:2"). Pas
évident...
Daniel

Merci bcp pour ta réponse.

J'ai essayé de faire ce que tu me recommandes mais ton conseil ne fonctionne
pas. Ou alors ça vient d'autre chose comme tu le disais.
J'ai donc essayé de faire de la façon suivante :

If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
.Selection.Insert Shift:=xlDown
.Range("A1").Select
End With

mais ça ne marche pas mieux! J'ai : Erreur d'execution '438' : Propriété ou
méthode non gérée par cette objet qui surligne : .Selection.Insert
Shift:=xlDown.

Je suppose donc qu'avec la méthode "With Sheets()" ce n'est pas la bonne
formulation que j'ai utilisé pour insérer les cellules copiées!

Merci pour ta précieuse aide.

JBF

"Daniel.C" a écrit dans le message de news:
%
Plus précisément :
Si tu mets :

Sheets("Attente de reglement").Select
Rows("2:2").Select

c'est la ligne 2 de la feuille qui contient la macro que tu cherches à
sélectionner, pas la ligne 2 de la feuille active. Remplace par :

With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
End With

Je n'ai pas regarddé le reste du code. Tu peux avoir le même problème plus
loin.
Daniel


Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi cette
macro me met un message d'erreur sur la 9eme ligne : Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a
échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque changement
de valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de facture
est insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#, 167.25,
_
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis en
facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le module
de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne correspondant
à la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes de
la ligne 32 si A32<>"". De même si par exemple A16<>"" ça
sélectionnerait toute la ligne 16.

Merci à vous

JBF














Avatar
JBF
Merci.
Effectivement ce n'est pas simple à comprendre pour un débutant, sans
compter que les messages d'erreurs ne sont pas très clairs. En tt cas pour
mon niveau de débutant ils ne le sont pas!

Je viens d'essayer. J'ai retiré le point et ça à l'air de fonctionner comme
sur des roulettes. Merci

Bonne journée.

JBF

"Daniel.C" a écrit dans le message de news:

Enlève le point devant "Selection". En effet, "Selection" est un objet un
non une propriété de la feuille "Attente de reglement". Ce qui est
sélectionné, c'est Sheets("Attente de reglement").Rows("2:2"). Pas
évident...
Daniel

Merci bcp pour ta réponse.

J'ai essayé de faire ce que tu me recommandes mais ton conseil ne
fonctionne pas. Ou alors ça vient d'autre chose comme tu le disais.
J'ai donc essayé de faire de la façon suivante :

If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
.Selection.Insert Shift:=xlDown
.Range("A1").Select
End With

mais ça ne marche pas mieux! J'ai : Erreur d'execution '438' : Propriété
ou méthode non gérée par cette objet qui surligne : .Selection.Insert
Shift:=xlDown.

Je suppose donc qu'avec la méthode "With Sheets()" ce n'est pas la bonne
formulation que j'ai utilisé pour insérer les cellules copiées!

Merci pour ta précieuse aide.

JBF

"Daniel.C" a écrit dans le message de news:
%
Plus précisément :
Si tu mets :

Sheets("Attente de reglement").Select
Rows("2:2").Select

c'est la ligne 2 de la feuille qui contient la macro que tu cherches à
sélectionner, pas la ligne 2 de la feuille active. Remplace par :

With Sheets("Attente de reglement")
.Select
.Rows("2:2").Select
End With

Je n'ai pas regarddé le reste du code. Tu peux avoir le même problème
plus loin.
Daniel


Bonsoir,

Dsl de n'avoir que des problèmes mais je ne comprends pas pourquoi
cette macro me met un message d'erreur sur la 9eme ligne :
Rows("2:2").Select


ERREUR D'EXECUTION '1004' : La méthode select de la classe range a
échouée.

Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque
changement de valeur
'condition : si le changement se fait ailleurs que dans la colonne F de
Previsionnel alors la macro sort de la procédure
If Intersect(Target, Range("F2:F65000")) Is Nothing Then Exit Sub
'si colonne F<>"rien" alors ça lance la macro du Module4 :
bouton_transformation_du_devis_en_facture
If Intersect(Target, Range("F2:F65000")) <> "" Then
Rows(Target.Row).Select
Selection.Copy
Sheets("Attente de reglement").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select
'ajoute un bouton dans l'onglet Previsionnel lorsqu'un numéro de
facture est insérer pour transformer le devis en facture
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 411#,
167.25, _
183.75, 53.25).Select
Selection.Characters.Text = "Cliquer ici pour transformer le devis
en facture"
With Selection.Characters(Start:=1, Length:1).Font
.Name = "century gothic"
.FontStyle = "Normal"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.OnAction = "renseigner_facture"
With Selection.Font
.Name = "century gothic"
.FontStyle = "Gras"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 6
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48
Selection.ShapeRange.Fill.Transparency = 0#
Selection.ShapeRange.Line.Weight = 0.75
Selection.ShapeRange.Line.DashStyle = msoLineSolid
Selection.ShapeRange.Line.Style = msoLineSingle
Selection.ShapeRange.Line.Transparency = 0#
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Shadow.Type = msoShadow17
Range("G19").Select
End If
End Sub


merci pour votre aide et votre patience ;)

JBF



"Daniel.C" a écrit dans le message de news:

Bonjour.
Si tu entres les valeurs manuellement en colonne A, mets dans le
module de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target <> "" Then Rows(Target.Row).Select
End Sub

Cordialement.
Daniel
Hello,

Comment faire une macro qui me sélectionnerai tte la ligne
correspondant à la ligne où on trouve une valeur dans la colonne A.

Concrètement. Je voudrais que la macro sélectionne ttes les colonnes
de la ligne 32 si A32<>"". De même si par exemple A16<>"" ça
sélectionnerait toute la ligne 16.

Merci à vous

JBF