Ajout ligne dans un tableau
Bonjour
je sais que ça sera trés simple pour certains
j'ai ce code en dessous qui sélectionne une ligne de tableau il la copie et il l'ajoute en dessous, sauf qu'il supprime pas la mise en forme de la police
Exemple : par exemple la ligne que je copie sa police était en rouge, et quand j'exécute le code il me rajoute une ligne vide mais il garde quand méme la police rouge si on veut ecrire ?
alors je veux qu'il m'ajoute une ligne vide mais avec une police standard(noire).
pouvez vous m'aider svp ?
Selection.EntireRow.Copy
Selection.Insert Shift:=xlDown
Selection.EntireRow.Offset(1, 0).ClearContents
Bonjour,
essaies ainsi :
Sub Macro1()
' Macro1 Macro
ActiveCell.EntireRow.Select
Selection.Copy
Selection.Insert Shift:=xlDown
Application.CutCopyMode = False
Selection.ClearContents
End Sub
Bonjour,
essaies ainsi :
Sub Macro1() ' Macro1 Macro ActiveCell.EntireRow.Select Selection.Copy Selection.Insert Shift:=xlDown Application.CutCopyMode = False Selection.ClearContents End Sub
Bonjour
je te remercie, mais ton code ne marche pas, je te mets en PJ mon simple fichier :
pour ajouter une ligne il faut se mettre sur une cellule de la colonne A.
Ce n'est pas mon code qui ne fonctionne pas mais le reste de la macro.
Il faut redonner toutes les informations à chaque fois sinon on ne peut pas adapter la réponse
à la demande.
quand tu sélectionnes une cellule de la colonne A et que tu clic sur ADD.
Au moment de la Validation cela va insérer une ligne et pas ajouter une ligne ! il faut être précis
dans la demande.
Du coup si on regarde le code. avec les lignes supplémentaire on voit que :
Selection.ClearContents on efface les infos copier pour mettre ceux des textbox.
Et dans ce cas on n'a plus besoin de décaler la ligne puisqu'on est déjà sur la bonne ligne :
"Lig = Selection.Row + 1" devient donc "Lig = Selection.Row"
Bonjour
je suis désolé j'ai mal utilisé les mots , par contre :
Ton code m'insere une ligne en dessus et pas en dessous comme je veux .
Il garde toujours la couleur de la police des autre lignes de tableau .
merci d'avance
Bonjour DamienRRRR, le forum,
Salut Xmenpl
Un essai.....
Private Sub CommandButton1_Click() ' ajouter en dessous
Dim nb As Integer, i As Integer, Lig As Long
If TextBox1.Value = "" Then
MsgBox ("Vous ne pouvez laisser vide l'information ID ")
Exit Sub
Else
If MsgBox("confirmez vous l'ajout du docuement ?", vbYesNo, "Confirmation") = vbYes Then
Rows(ActiveCell.Row + 1).EntireRow.Insert
Lig = ActiveCell.Row + 1
Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1: Cells(Lig, 1).Interior.Color = xlNone
Cells(Lig, 2) = TextBox2.Value: Cells(Lig, 2).Font.ColorIndex = 1: Cells(Lig, 2).Interior.Color = xlNone
Cells(Lig, 3) = TextBox3.Value: Cells(Lig, 3).Font.ColorIndex = 1: Cells(Lig, 3).Interior.Color = xlNone
Cells(Lig, 4) = TextBox4.Value: Cells(Lig, 4).Font.ColorIndex = 1: Cells(Lig, 4).Interior.Color = xlNone
End If
End If
End Sub
Cordialement,
Bonjour DamienRRRR, le forum,
Salut Xmenpl
Un essai.....
Private Sub CommandButton1_Click() ' ajouter en dessous Dim nb As Integer, i As Integer, Lig As Long If TextBox1.Value = "" Then MsgBox ("Vous ne pouvez laisser vide l'information ID ") Exit Sub Else If MsgBox("confirmez vous l'ajout du docuement ?", vbYesNo, "Confirmation") = vbYes Then Rows(ActiveCell.Row + 1).EntireRow.Insert Lig = ActiveCell.Row + 1 Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1: Cells(Lig, 1).Interior.Color = xlNone Cells(Lig, 2) = TextBox2.Value: Cells(Lig, 2).Font.ColorIndex = 1: Cells(Lig, 2).Interior.Color = xlNone Cells(Lig, 3) = TextBox3.Value: Cells(Lig, 3).Font.ColorIndex = 1: Cells(Lig, 3).Interior.Color = xlNone Cells(Lig, 4) = TextBox4.Value: Cells(Lig, 4).Font.ColorIndex = 1: Cells(Lig, 4).Interior.Color = xlNone End If End If End Sub
AJOUT LIGNE.xlsm
Cordialement,
Bonjour
super ça marche bien, il reste juste un dernier detail, quand il me rajoute la ligne j'aurais aimé que le font de la ligne sera gardé et qui sera similaire au autres lignes de tableau ?
a tu une idée stp ?
super ca marche bien merci merci merci
Bonjour DamienRRRR, xorsankukai et le forum
Et comme cela
Private Sub CommandButton1_Click() ' ajouter en dessous
Dim nb As Integer, i As Integer, Lig As Long
If TextBox1.Value = "" Then
MsgBox ("Vous ne pouvez laisser vide l'information ID ")
Exit Sub
Else
If MsgBox("confirmez vous l'ajout du docuement ?", vbYesNo, "Confirmation") = vbYes Then
Rows(ActiveCell.Row + 1).EntireRow.Insert
Lig = ActiveCell.Row + 1
Cells(Lig, 1) = TextBox1.Value
Cells(Lig, 2) = TextBox2.Value
Cells(Lig, 3) = TextBox3.Value
Cells(Lig, 4) = TextBox4.Value
End If
End If
End Sub
Bonne continuation
Ferdinand
Re,
quand il me rajoute la ligne j'aurais aimé que le font de la ligne sera gardé et qui sera similaire au autres lignes de tableau ?
Dans cette ligne de code:
Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1: Cells(Lig, 1).Interior.Color = xlNone
: Cells(Lig, 1).Font.ColorIndex = 1 'couleur de la police en noir
: Cells(Lig, 1).Interior.Color = xlNone 'aucune couleur dans la cellule -à supprimer dans ton cas
Private Sub CommandButton1_Click() ' ajouter en dessous
Dim nb As Integer, i As Integer, Lig As Long
If TextBox1.Value = "" Then
MsgBox ("Vous ne pouvez laisser vide l'information ID ")
Exit Sub
Else
If MsgBox("confirmez vous l'ajout du docuement ?", vbYesNo, "Confirmation") = vbYes Then
Rows(ActiveCell.Row + 1).EntireRow.Insert
Lig = ActiveCell.Row + 1
Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1
Cells(Lig, 2) = TextBox2.Value: Cells(Lig, 2).Font.ColorIndex = 1
Cells(Lig, 3) = TextBox3.Value: Cells(Lig, 3).Font.ColorIndex = 1
Cells(Lig, 4) = TextBox4.Value: Cells(Lig, 4).Font.ColorIndex = 1
End If
End If
End Sub
Cordialement,
Re,
quand il me rajoute la ligne j'aurais aimé que le font de la ligne sera gardé et qui sera similaire au autres lignes de tableau ?
Dans cette ligne de code:
Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1: Cells(Lig, 1).Interior.Color = xlNone
: Cells(Lig, 1).Font.ColorIndex = 1 'couleur de la police en noir
: Cells(Lig, 1).Interior.Color = xlNone 'aucune couleur dans la cellule -à supprimer dans ton cas
Private Sub CommandButton1_Click() ' ajouter en dessous Dim nb As Integer, i As Integer, Lig As Long If TextBox1.Value = "" Then MsgBox ("Vous ne pouvez laisser vide l'information ID ") Exit Sub Else If MsgBox("confirmez vous l'ajout du docuement ?", vbYesNo, "Confirmation") = vbYes Then Rows(ActiveCell.Row + 1).EntireRow.Insert Lig = ActiveCell.Row + 1 Cells(Lig, 1) = TextBox1.Value: Cells(Lig, 1).Font.ColorIndex = 1 Cells(Lig, 2) = TextBox2.Value: Cells(Lig, 2).Font.ColorIndex = 1 Cells(Lig, 3) = TextBox3.Value: Cells(Lig, 3).Font.ColorIndex = 1 Cells(Lig, 4) = TextBox4.Value: Cells(Lig, 4).Font.ColorIndex = 1 End If End If End Sub
Cordialement,
Bonjour
super ça marche trés bien,
j'ai rajouté une performance sur mon user forme . j'ai juste un probleme sur la partie modifier
un bouton aller : pour chercher sur la colonne B les ID et de les me donner via une comobox. (marche bien)
un bouton ajouter pour ajouter une ligne (marche bien)
un boutton Modifier pour modifier le contenu d'une ligne tableau que je cherche via ma comobox.
l'objectif c'est quand l'utilisateur modifié un contenue je veux qu'il apparais avec une police Rouge
mais sur mon fichier actuel qui est en PJ quand je clic sur modifier il va mettre tous le contenue de la ligne en rouge, je voudrais faire un petite boucle if qui met en police rouge juste le contenu modifié.
avez vous une idée stp .
Re,
j'ai rajouté une performance sur mon user forme . j'ai juste un probleme sur la partie modifier
un bouton aller : pour chercher sur la colonne B les ID et de les me donner via une comobox. (marche bien)
un bouton ajouter pour ajouter une ligne (marche bien)
un boutton Modifier pour modifier le contenu d'une ligne tableau que je cherche via ma comobox.
l'objectif c'est quand l'utilisateur modifié un contenue je veux qu'il apparais avec une police Rouge
Ça ne fonctionne pas chez moi....où je ne l'utilise pas correctement,
Lorsque je sélectionne la combobox de recherche, elle ne m'affiche rien, si je saisis l'ID, c'est OK, utilité de la combobox ?
Lorsque je veux ajouter un ID, ça plante.
J'ai tenté quelques modifs...
- Alimentation du combobox en fonction de la colonne B (la saisie manuelle reste possible).
- Pour la modif : si les valeurs des textbox diffèrent des valeurs des cellules, police rouge pour la cellule qui diffère (sinon noire).
- Pour l'ajout: on teste si l'ID existe déjà pour éviter les doublons, ajout à la dernière ligne.
Le codage n'est pas optimisé mais semble fonctionnel....du moins chez moi,
A toi de tester....
Bonne soirée,