Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 définir plage pour saisie de données

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GHISLAIN

XLDnaute Impliqué
Bonjour les exceliens, nes..............

Voila j'utilise ce code pour rentrer des noms sans doublons qui fonctionne du tonnerre . Merci a son créateur

nom = "toto"
If nom = "" Then Exit Sub

msg = MsgBox("Voulez-Vous Ajouter : " & nom, vbYesNo, "AVERTISSEMENT")
If msg = 6 Then
L = ActiveSheet.Range("a12", "a19").End(xlUp).Row + 1
ActiveSheet.Range("a" & L).Value = nom


For i = Range("a65536").End(xlUp).Row + 1 To 2 Step -1
If Range("a" & i) = Range("a" & i - 1) Then
MsgBox "Doublon Détecté et Détruit : " & Range("a" & i - 1).Value, vbCritical, "AVERTISSEMENT"



Range("a" & i).Clear

End If

Next
On Error Resume Next

End If


Issue de ce code je ne parvient pas a définir la plage concernée . Effectivement , je souhaite ecrire les données a partir de la ligne 12 jusqu’à la ligne 19.
Et ensuite utiliser ce code sur des plages mais différentes c'est a dire pouvoir écrire sur la plage A12 a A19 et une fois pleine passer a la plage A24 a A32

merci a tous de vos suggestions et idées

Bien Amicalement
GHISLAIN
 
Bonsoir GHISLAIN

Je ne sais pas si j'ai bien compris, un essai avec:

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lig As Long
lig = Range("a" & Rows.Count).End(xlUp).Row + 1
Range("a" & lig) = "x"
If lig = 19 Or lig = 24 Or lig = 29 Then lig = lig + 5: Range("a" & lig) = "x"
Cancel = True
End Sub
 
Bonsoir Lone-wolf
Merci de passer sur mon fil
ta proposition répond presque a ma demande .
Les X commence a la ligne 2 alors que je souhaiterais qu'il commence a s'écrire a partir de la ligne 12 et se termine a ligne 19
et pour le second qu'il s’écrivent a partir de la ligne 24 jusqu’à 31
Arrivé a la ligne 31 fin de l’Écriture du X
merci de ton aide

Ghislain
 
Si il n'y a rien écrit dans la colonne, dans la cellulle 11 tu met ceci par exemple -----------, couleur du texte blanc. Là tu reteste cette macro.

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lig As Long
  lig = Range("a" & Rows.Count).End(xlUp).Row + 1
  If lig = 33 Then: MsgBox "Fin de la saisie", , "GHISLAIN": End: Range("a33:a1000").ClearContents
  Range("a" & lig) = "x"
  If lig = 19 Or lig = 24 Then lig = lig + 5: Range("a" & lig) = "x"
  Cancel = True
End Sub
 
Dernière édition:
Re moi,

je crois avoir trouvé la solution :

ActiveSheet.Range("a2:a" & ActiveSheet.Range("a65000").End(xlUp).Row).Range("A18").End(xlUp).Offset(1, 0) = nom

Ça a l'air de fonctionner

Merci a toi

Bonne journée

Gislain
 
Bonjour Gislain

J'ai trouvé ceci sur le net et adapté à ton cas.

VB:
Private Sub CommandButton1_Click()
Dim lig As Long, mga As Variant, s
lig = 10
With Feuil1
Do Until .Cells(lig, 1) = ""
  If .Cells(lig, 1).MergeCells Then
    Set mga = .Cells(lig, 1).MergeArea
    s = mga.Address
    lig = Mid$(s, InStrRev(s, "$") + 1)
       .Cells(lig, 1) = "x"
  End If
    lig = lig + 1
      If lig = 20 Then lig = lig + 4
      If lig = 31 Then Unload Me
Loop
.Cells(lig, 1) = "x"
End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
237
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Réponses
2
Affichages
153
Réponses
5
Affichages
232
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…