Bonjour,
J'ai un code (Merci Excel Downloads!) qui me permet de poursuivre automatiquement la numérotation des lignes à partir du numéro de la dernière ligne existante lorsque je rajoute automatiquement d'autres lignes dans un tableau structuré.
Toutefois ce code ne fonctionne que si il y a déjà une ligne avec un n°. Je voudrais pouvoir gérer le cas où la 1° ligne du tableau est vide (Bien sûr , je peux créer une 1° ligne vide avec le numéro 1 - mais ce serait plus professionnel et puis dans ce cas la ligne n°1 reste vide).
J'ai essayé diverses options avec If Range("A5").Value ="" pour créer un N°1 mais je veux que la 1° ligne ajoutée soit attribuée à ce numéro, ce qui n'est pas le cas avec ma modification. Ma maîtrise du VBA n'est pas encore suffisante!
Voici le code :
	
	
	
	
	
		
Donc ma question : Comment gérer le cas où la 1° ligne du tableau est vide pour que la 1° ligne ajoutée prenne le n°1.
Merci d'avance et ... Bonne Année!
	
		
			
		
		
	
				
			J'ai un code (Merci Excel Downloads!) qui me permet de poursuivre automatiquement la numérotation des lignes à partir du numéro de la dernière ligne existante lorsque je rajoute automatiquement d'autres lignes dans un tableau structuré.
Toutefois ce code ne fonctionne que si il y a déjà une ligne avec un n°. Je voudrais pouvoir gérer le cas où la 1° ligne du tableau est vide (Bien sûr , je peux créer une 1° ligne vide avec le numéro 1 - mais ce serait plus professionnel et puis dans ce cas la ligne n°1 reste vide).
J'ai essayé diverses options avec If Range("A5").Value ="" pour créer un N°1 mais je veux que la 1° ligne ajoutée soit attribuée à ce numéro, ce qui n'est pas le cas avec ma modification. Ma maîtrise du VBA n'est pas encore suffisante!
Voici le code :
		VB:
	
	
	Sub RtionProject_NumAuto()
'Repart de la valeur la plus élevée quelque soit l'ordre de tri
  Dim i As Long, Maxi As Long
  With Sheets("RtionProjet_Data").ListObjects("Ta_RtionProjet_Data")
    Maxi = Application.Max(.ListColumns(1).DataBodyRange)
    For i = 1 To .ListRows.Count
      If .ListRows(i).Range(1) = "" Then
        Maxi = Maxi + 1
        .ListRows(i).Range(1) = Maxi
      End If
    Next i
  End With
End Sub
	Donc ma question : Comment gérer le cas où la 1° ligne du tableau est vide pour que la 1° ligne ajoutée prenne le n°1.
Merci d'avance et ... Bonne Année!