Bonjour à tous
Je suis actuellement en train de créer une macro en VBA sous excel 2002,avec très peu d'expérience et de vagues (très vagues) souvenirs de visual basic ...3 , c'est comme qui dirait que je débute .
Le cahier de charge : A partir d'une liste complète d'accès à ouvrir lors d'une visite sur un avion , imprimer seulement ceux sélectionnés avec la figure correspondante , le fichier est applicable à toutes les versions des avions et il y a quelques différences d'accès entre eux .
Pour ce qui est du choix , du tri et de l'impression , j'ai réussi à faire ce que je voulais en repiquant des bouts de code à droite et à gauche , et ça marche .
Mon problème : sur une feuille , je dispose de 2 figures (images) différentes superposées et je veux afficher et imprimer soit l'une soit l'autre en fonction du contenu d'une cellule qui sera vide ou non en fonction de la version avion .
Ces images ont été intégrées à la feuille par copier-coller et sont nommées OBJET 1 et OBJET 3 (quand on clique dessus , affiché en haut à gauche) avec code =INCORPORER("MSPhotoEd.3";"").
Je n'arrive pas à mettre soit l'une soit l'autre au premier plan , j'ai essayé par Zorder , hide , show , sendtoback ,mais à chaque fois VBA me renvoi le message d'erreur : objet non défini
Comment les définir pour qu'elles soient reconnues dans le code ?
Merci pour vos conseils avisés .
le code :
'cab230cz
Worksheets("feuil1").Activate
Range("q11:r23").Select
Selection.Copy
Worksheets("cab230cz").Activate
[b58].Select
ActiveSheet.Paste
Worksheets("feuil1").Activate
Range("q90:r91").Select
Selection.Copy
Worksheets("cab230cz").Activate
[b71].Select
ActiveSheet.Paste
'ici , le moment où je veux sélectionner l'image à afficher et imprimer
If [b71].Value <> "" Then
'Objet 3. premier plan
Else
'Objet 3 . arriere plan
End If
'''
Application.ScreenUpdating = False
For Each cel In Range("c72", Range("c58").End(xlUp))
If cel.Value = "" Then
cel.EntireRow.Hidden = True
Else: cel.EntireRow.Hidden = False
Range("k1").Value = Range("k1").Value + 1
End If
Next
If Range("k1").Value > 1 Then
ActiveWindow.SelectedSheets.PrintPreview
Else
End If