mikachu
XLDnaute Occasionnel
Bonjour à tous !
J'ai créé (non sans mal, mais google est mon ami) des macros me permettant d'historiser les modifications réalisées dans un fichier.
En gros j'ai 2 feuilles, une première "liste" qui reprend des travaux à réaliser et une deuxième feuille "modifications" qui comprend un historique.
	
	
	
	
	
		
	
	
	
	
	
		
En gros, dans la première macro, à chaque fois que je sélectionne une case de la feuille "liste", j'enregistre la valeur de la case dans une variable.
Dans la deuxième macro, si la case sélectionnée est modifiée, alors je vais implémenter la feuille "modifications" avec la case, l'ancienne valeur, la nouvelle valeur, la date de modif et la personne qui a modifié.
Le problème est en cas de sélection multiple...
Je voudrais que si je fais un copier / coller sur une sélection multiple, la macro me créé autant de lignes dans le tableau modif que de cases ainsi modifiées.
Help please
En espérant avoir été clair, merci d'avance
	
		
			
		
		
	
				
			J'ai créé (non sans mal, mais google est mon ami) des macros me permettant d'historiser les modifications réalisées dans un fichier.
En gros j'ai 2 feuilles, une première "liste" qui reprend des travaux à réaliser et une deuxième feuille "modifications" qui comprend un historique.
		Code:
	
	
	Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Not Sh.Name Like "liste" Then Exit Sub
If Target.Count > 1 Then Exit Sub
memo1 = Target.Value
End Sub
		Code:
	
	
	Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
 If Not Sh.Name Like "liste" Then Exit Sub
 If Target.Address = "$H$1" Then Exit Sub
 L = Sheets("modifications").Range("A65536").End(xlUp).Row
 Sheets("modifications").Range("A" & L + 1) = Format(Date, _
 "mm/dd/yyyy") & " " & Format(Time, "hh:mm:ss")
 Sheets("modifications").Range("B" & L + 1) = Target.AddressLocal
 Sheets("modifications").Range("C" & L + 1) = memo1
 Sheets("modifications").Range("D" & L + 1) = Target.Value
 Sheets("modifications").Range("E" & L + 1) =  ActiveWorkbook.UserStatusEn gros, dans la première macro, à chaque fois que je sélectionne une case de la feuille "liste", j'enregistre la valeur de la case dans une variable.
Dans la deuxième macro, si la case sélectionnée est modifiée, alors je vais implémenter la feuille "modifications" avec la case, l'ancienne valeur, la nouvelle valeur, la date de modif et la personne qui a modifié.
Le problème est en cas de sélection multiple...
Je voudrais que si je fais un copier / coller sur une sélection multiple, la macro me créé autant de lignes dans le tableau modif que de cases ainsi modifiées.
Help please
En espérant avoir été clair, merci d'avance
			
				Dernière édition: 
			
		
	
								
								
									
	
		
			
		
		
	
	
	
		
			
		
		
	
								
							
							 
	 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		