Alimentation d'une cellule par concaténation
Bonjour,
Pour tester mon dev Java, j'ai besoin d'un fichier d'entrée dont la saisie sera faite par différents users. Je suis entrain de faciliter la saisie de l'utilisateur dans ce fichier. En l'occurence, je souhaite remplir toute la colonne B par concaténation des cellules en colonnes A et E.
(plus précisément je concatène: colonneA_NumAleatoireNumAleatoireColonneE)
J'ai essayé de faire ça en VB pour que la cellule se remplisse par double click. Ca fonctionne comme je le souhaite mais parfois tout plante et je suis obligée de fermer le .xls par CTRL+ALT+SUPPR.
Pourriez-vous me dire ce qui ne va pas trop dans mon code svp?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| 'permet de remplir automatiquement la colone B idndoc par concaténation de l'idncaisse_dateDuJour_numAlea_NumPDF
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim NumLigne, i, NbLigne As Integer
Randomize
NumLigne = 2 'on commence à la 2ème ligne pour ne pas écraser la ligne de titre
NbLigne = WorksheetFunction.CountA(Range("A:A")) 'compte le nb de cellules non vides dans la 1er colonne
If Not Application.Intersect(Target, Range("B2:B10000")) Is Nothing Then
'si idncaisse n'est non vide OU refAttributaire est non vide alors
Do While (NumLigne <= NbLigne)
If ((IsEmpty(Cells(NumLigne, 1)) Or IsEmpty(Cells(NumLigne, 5))) And NumLigne <= NbLigne) Then
Else
' l'idndoc généré est construit de la façon suivante: idncaisse_numAleaNumAlea_refAttrib
Cells(NumLigne, 2) = Cells(NumLigne, 1) & "_" & Int(Rnd * 100) & Int(Rnd * 100) & Cells(NumLigne, 5) 'concatène la 1ere et la dernière colonne
NumLigne = NumLigne + 1
End If
Loop
End If
End Sub |
Merci pour vos remarques!