2 procédures Worksheet

phil69

XLDnaute Occasionnel
Bonjour à toutes et tous

je voudrais que sur un tableau on ne peut écrire que dans une cellule précise,j'ai trouvé sur le forum un code
Worksheet_SelectionChange qui fonctionne très bien sauf que j'utilise déjà un code Worksheet_Change et les 2 codes bien sur se contraries
mes codes
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("F2").Select
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Dim T As Range
If Target.CountLarge > 1 Then Exit Sub
If Target.Address = "$F$2" And Target(1, 1) <> "" Then
Range("A500").End(xlUp).Offset(1, 0).Select
ActiveCell.Value = "=LEFT(F2,8)*1"
End If
Range("F2").Select
End Sub
quel modif au 2è code pour imposser la cellule F2 dès le departs et imposer la non sélection d'une autre
possible ou pas ??????
merci
phil69
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : 2 procédures Worksheet

bonjour,

pourquoi .Select !? pas besoin !

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.CountLarge > 1 Then Exit Sub
If Target.Address = "$F$2" And Cells(1, 1) <> "" Then
   R$ = Range("A500").End(xlUp).Offset(1, 0).Address
   Range(R$) = "=LEFT(F2,8)*1"
End If
Range("F2").Select
End Sub

EDIT dans cet exemple il y avait un x devant pour faire mes essais
xWorksheet_SelectionChange(ByVal Target As Range)
alors évidemment ça ne pouvait pas se déclencher !
 
Dernière édition:

phil69

XLDnaute Occasionnel
Re : 2 procédures Worksheet

re le forum

Merci pour la réponse mais j'ai du mal m'exprimer,je joint deux fichier 1 avec mon code et un avec ton code
Avec mon code quand je douche un code barre et que je suis sur la cellule F2 ça me rempli la colonne A a chaque
douchage et me repositionne enF2. mais pour la première saisie ou par inadvertance le curseur peut ce trouver sur
une autre cellule c'est pour cela que je voudrais imposer le curseur sur F2 dans le code Private Sub Worksheet_Change les code sépares fonctionne très bien mais ensemble ça tourne en boucle
merci
phil69
 

Pièces jointes

  • saisie PEM.xls
    34.5 KB · Affichages: 20
  • Copie de saisie PEM.xls
    36 KB · Affichages: 21

Roland_M

XLDnaute Barbatruc
Re : 2 procédures Worksheet

re

il y a erreur !
pour mes essais j'avais mis x devant > comme ceci xWorksheet_SelectionChange(ByVal Target As Range)
il te faut enlever le x sinon ça ne s'exécute pas (excuses)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.CountLarge > 1 Then Exit Sub
If Target.Address = "$F$2" And Cells(1, 1) <> "" Then
R$ = Range("A500").End(xlUp).Offset(1, 0).Address
Range(R$) = "=LEFT(F2,8)*1"
End If
Range("F2").Select
End Sub
 

Discussions similaires

Réponses
1
Affichages
249