Bonjour,
j’ai il y a quelques années développé un petit script VBA sur excel.
Depuis, je n’utilise plus que libre office. Le fichier enregistré sous excel est lu et fonctionne sous libre office mais quand je l’enregistre (format xlsm ou ods), le nouveau fichier ne fonctionne plus.
Je souhaiterai écrire à nouveau mon script mais dans un macro au standard libre office (ou réussir à le faire fonctionner après un enregistrement)
Mon script consiste à remplir automatiquement un certain nombre de cellules (target.offset() = ) à partir d’une saisie dans un cellule (if target.value = )
Quelqu’un aurait t’il une méthode équivalente en libre office ?
Je mets en copie mon script VBA ; je n’attends pas une traduction mais juste des pistes.
Merci
PS1 : je ne suis pas un développeur, je me débrouille juste un peu. J’avais réalisé le script en furetant sur les forums sans avoir tout compris à ce que je faisais (notamment Application.EnableEvents) mais ça marchait
PS2 : script VBA
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Tablo
Dim i As Long
If Target.Cells.Count > 1 Then Exit Sub
If Target.Column <> 10 Or Target.Row < 10 Or Target.Row > 24 Then Exit Sub
Tablo = Sheets("liste adhérents").Range("A2:E201")
For i = LBound(Tablo, 1) To UBound(Tablo, 1)
If Target.Value = Tablo(i, 2) Then
Application.EnableEvents = False
Target.Offset(0, -8).Value = Tablo(i, 2)
Target.Offset(0, -7).Value = Tablo(i, 1)
Target.Offset(0, -6).Value = Tablo(i, 4)
Target.Offset(0, -5).Value = Tablo(i, 3)
Application.EnableEvents = True
Exit For
End If
Next i
End Sub