Macro Android adaptatif pc
Bonjour à tous,
J'aurai besoin d'une solution pour maintenir une macro sur pc tout en utilisant un cellulaire.
J'utilise en ce moment cette Macro:
Private Sub WorkSheet_Change(ByVal Target As Range)
Select Case Target.Column
Case 1, 2,
Cells(Target.Row, 4) = Now
End Select
End Sub
Elle indique la date dans une colonne si une autre colonne est modifiée. Elle fait exactement ce dont j'avais besoin à un détail près. J'utilise un cellulaire Androïde. Cependant, la date m'est utile seulement sur Windows. Donc, j'aimerais, malgré que les macro n'est pas utilisable sur Androïde, que les dates se mettent tout de même à jour quand j'ouvrirai le dossier sur pc. J'ai pensé créé un dossier seulement sur pc qui fait la différence entre les 2 dossiers mais je ne suis sûr de rien.
Merci pour votre aide.
Bonjour,
à part en faisant une copie des 2 colonnes dans feuille annexe pour voir les changement je ne vois pas.
Crée toi une feuille nommée 'backup' qui doit être identique sur les colonne A:B.
Modifie ta macro ainsi :
Private Sub WorkSheet_Change(ByVal Target As Range)
Select Case Target.Column
Case 1, 2
Cells(Target.Row, 4) = Now
Sheets("backup").Range(Target.Address) = Target.Value
End Select
End SubDans ThisWorkbook :
Private Sub Workbook_Open()
Dim derlig As Long, lig As Long, col As Long
Dim avant, apres
With Worksheets("Feuil1")
derlig = .Range("A:B").Find("*", , , , xlByRows, xlPrevious).Row
avant = Worksheets("backup").[A1].Resize(derlig, 2).Value
apres = .[A1].Resize(derlig, 2).Value
For lig = 2 To lig
For col = 1 To 2
If apres(lig, col) <> avant(lig, col) Then
Worksheets("backup").Cells(lig, col) = apres(lig, col)
.Cells(lig, 4) = Now()
End If
Next
Next lig
End With
End Subà l'ouverture elle fait le bilan des évolutions, met la date et met à jour le backup sur les nouvelles modifs.
A noter que tu mets now() qui inclue l'heure qui sera forcément fausse et la date sera celle de l'ouverture sur le pc.
A la limite tu peux ajouter une ligne pour demander la date à mettre.
Je te laisse tester, demande trop de manips...
eric
Merci Eric pour ton aide. J'ai fait au mieux de mes connaissances et je n'y suis pas arrivé.. Je sais que je me suis probablement pas pris de la bonne manière et je m'en excuse.
Je vais mettre le fichier que j'utilise actuellement ici-bas si quelqu'un veux tenté de résoudre l'erreur que j'ai probablement commise dans ma macro.
Vraiment merci de votre patience et de votre aide.
Bonjour,
ton onglet ne s'appelle pas "Inventaire" mais "Inventaire " avec une espace au bout. Corrigé
De plus quand tu écris sur la feuille dans son événement Change, il faut désactiver les événements avant et les rétablir ensuite. Sinon tu entre dans une boucle sans fin.
Tu parlais des colonnes 1 et 2 et en fait c'est 2 à 7 et tu n'as pas fait toutes les modifs. Si tu n'es pas encore assez performant pour faire les adaptations toi même il faut être exact et complet...
Je met la Date et non Now(). Comme ça quand tu vois heure 00:00 tu sais que la date est celle de l'ouverture du fichier ayant provoqué la mise à jour et non l'heure réelle de la maj.
J'ai ajouté aussi un message te disant le nombre de lignes mises à jour.
eric
Merci Eric pour ton aide. Ça fonctionne très bien. Le problème est résolut.