Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Macro VBA pour séléctionner une cellule suivant équation

Antoine85

XLDnaute Nouveau
Bonjour,

Je fais face à un problème sur ma macro VBA sur Excel 2013.

Je souhaite faire en sorte de sélectionner la cellule A(n) suivant une équation n = précédemment entrer.

Lorsque je tape ceci à titre d'exemple : ThisWorkbook.Worksheets("Feuil1").Range("A42").Select; le programme fonctionne.
Or dès que j'essaye de mettre A(n), on m'indique une erreur. Quelle est la manipulation à faire ?
 

Paf

XLDnaute Barbatruc
Re : Macro VBA pour séléctionner une cellule suivant équation

Bonjour Antoine85, Bebere,

Quel est le message d'erreur ? Que contient réellement NumGen1, n en mode pas à pas ?

Sinon joindre un extrait du classeur ?

A+

Edit : désolé je n'avais pas vu les messages de la page 2
 
Dernière édition:

Antoine85

XLDnaute Nouveau
Re : Macro VBA pour séléctionner une cellule suivant équation

Bonjour Paf,

Je suis revenu à l'utilisation de mon équation en modifiant quelque points.
C'est à chaque fois la ligne Range ("A" & n).Activate qui pose problème.

Après de nombreux essais plusieurs types d'erreurs sont apparus. Je vous mets le dernier programme en cours ainsi que le message d'erreur qui s'affiche :

Private Sub BP1_Click()

Dim NumGen1 As Integer
Dim n As Integer


n = 7 + 35 * (Worksheets("Lames Général").Range("NumGen1").Value - 1)


ThisWorkbook.Worksheets("Lames 1 en 5,4").Activate
Range("A" & n).Activate

End Sub

Message Erreur : " L'indice n'appartient pas à la sélection" ou "La méthode Activate de la classe Range a échoué"
 
Dernière modification par un modérateur:

Paf

XLDnaute Barbatruc
Re : Macro VBA pour séléctionner une cellule suivant équation

re,

j'ai fait plusieurs essais qui fonctionnent, dont:

Code:
n = 7 + 35 * (Range("NumGen1").Value - 1)

With ThisWorkbook.Worksheets("Lames 1 en 5,4")
 .Activate
 .Range("A" & n).Select
End With

il faut bien évidemment que la cellule E5 de la feuille Lames Général ( soit NumGen1) soit renseignée, sinon n est négatif !

edit : ou bien rajouter un test sur la valeur de NumGen1 et interdire si = 0 ( ou n'autoriser que si >0)

A+
 
Dernière édition:

Bebere

XLDnaute Barbatruc
Re : Macro VBA pour séléctionner une cellule suivant équation

bonsoir Antoine,Paf
comme suit c'est bon activate et select
Private Sub BP1_Click()
Dim n As Long

n = Feuil2.[NumGen1] - 1
n = 7 + 35 * n

ThisWorkbook.Worksheets("Lames 1 en 5,4").Activate
If n > 0 Then ActiveSheet.Range("A" & n).Activate 'Select

End Sub
 

Antoine85

XLDnaute Nouveau
Re : Macro VBA pour séléctionner une cellule suivant équation

Bonjour,
Le programme fonctionne et je vous en remercie. Je n'aurais jamais pensé au Activesheet devant le Range.
Merci à vous pour le temps consacré !
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…