Quand je tape range("A1") ou range(1,1) : erreur de compilation

Makina

XLDnaute Junior
Bonjour à tous,

Voila, j ai un message d'erreur de compilation à chaque fois que je veux sélectionner une cellule. Que j'écrive :
Worksheets("Sheet1").Range("A9").Value
Worksheets("Sheet1").Cells("A9").Value
Worksheets("Sheet1").Cells(9,1).Value

Le message revient toujours en pointant sur "A9" ou 9.
Est ce que j'écris mal ou c est mon excel qui deconne ?

Merci à vous!
 

Pièces jointes

  • Sans titre.jpg
    Sans titre.jpg
    59.7 KB · Affichages: 54
  • Sans titre.jpg
    Sans titre.jpg
    59.7 KB · Affichages: 55
  • Sans titre.jpg
    Sans titre.jpg
    59.7 KB · Affichages: 55

VDAVID

XLDnaute Impliqué
Re : Quand je tape range("A1") ou range(1,1) : erreur de compilation

Bonjour Makina,

Le problème ne vient pas de la synthaxe de ton code, mais du fait qu'il se trouve en dehors d'une procédure (Ici en dehors de ton Sub Ouvrir_mdb())

Il devrait plutôt être du genre:
Code:
Sub Ouvrir_mdb()
'Ton code en entier
End Sub

Seul le Dim cmd peut se trouver ici en dehors de ta procédure

Bonne journée
 

Makina

XLDnaute Junior
Re : Quand je tape range("A1") ou range(1,1) : erreur de compilation

Merci VDAVID, ce pb est résolu !

Par contre j ai un autre code, ou tout est bien sous sub et qui me dit :
erreur d’exécution '9' ....

Je dois faire un programme et je débute en VBA. A terme, mon programme dans le classeur A devra :
dès que l on rentre une valeur dans les cases A9 à A18 (pas forcement toutes) aller comparer le nombre dans un autre tableur (dans une seule colonne) et ressortir des infos de se second tableur dans le premier .... Et j ai déjà du mal à forcer une valeur ....

Sans titre.jpg

Merci à vous !
 

Pièces jointes

  • Sans titre.jpg
    Sans titre.jpg
    48.2 KB · Affichages: 66
  • Sans titre.jpg
    Sans titre.jpg
    48.2 KB · Affichages: 63

VDAVID

XLDnaute Impliqué
Re : Quand je tape range("A1") ou range(1,1) : erreur de compilation

Re Makina,

La synthaxe Range(9,1).Value n'est pas correcte.

Il faudrait plutôt écrire (Au choix):

Code:
Sub Val_Cel()
'Pour une seule cellule (Sans les MsgBox au début)
MsgBox Range("A1").Value 'Première méthode
MsgBox Cells(1, 1).Value 'Deuxième méthode
MsgBox Range(Cells(1, 1), Cells(1, 1)).Value'Troisième méthode
End Sub

Pour récupérer la valeur d'une cellule.

Sinon pour ton projet, si tu bloques, tu peux ouvrir un nouveau fil sur le ou les points où tu bloque avec un fichier simplifié exemple retraçant ta position de départ et ce que tu souhaites à l'arrivée.
N'hésites pas si tu as d'autres questions

Bonne journée !
 

Discussions similaires

Réponses
3
Affichages
547

Statistiques des forums

Discussions
312 380
Messages
2 087 798
Membres
103 664
dernier inscrit
wolvi71