Écrit une chaîne de caractères à une cellule dans excel

Je suis en train d'écrire une valeur dans le "A1" de la cellule, mais je reçois l'erreur suivante:

Définie par l'Application ou par l'objet défini erreur '1004'

J'ai essayé de nombreuses solutions sur le net, mais aucun travail. Je suis à l'aide d'excel 2007 et le fichier extensiton est .xlsm.

Mon code est comme suit:

Sub varchanger()
On Error GoTo Whoa
Dim TxtRng  As Range

Worksheets("Game").Activate
ActiveSheet.Unprotect

Set TxtRng = ActiveWorkbook.Sheets("Game").Cells(1, 1)
TxtRng.Value = "SubTotal"

'Worksheets("Game").Range("A1") = "Asdf"

LetsContinue:
    Exit Sub
Whoa:
    MsgBox Err.number
    Resume LetsContinue
End Sub

Edit: Après je reçois l'erreur si je clique sur l'icône d'avertissement, puis sélectionnez afficher les étapes de calcul de son travail correctement

Si je n'étais pas sorti de voix, je dirais +1 pour On Error Goto Whoa
Je vous remercie. Cette erreur est vraiment freaking me out
J'en doute. J'ai fait une recherche pour votre message d'erreur sur Bing, et toutes sortes d'erreurs, qui ont été sur la syntaxe. Avez-vous essayé de marcher à travers votre code via la touche F8 pour trouver la ligne où l'erreur se produit? Parfois, en regardant les extra les informations de débogage dans le fichier Excel débogueur quand il envoyait le message d'erreur peut aider à cerner les choses un peu.
Essayez de déclarer TxtRng As Excel.Range au lieu de simplement Range. Si cela ne fonctionne pas, essayez Worksheets("Game").Select au lieu de Activate. Si cela ne fonctionne pas, ôter la protection du classeur/feuille d'abord manuellement.
Combien de fichiers avez-vous ouvert? Juste une? Essayez de qualification de l'ensemble de votre feuille de calcul des références avec un classeur: eg. Worksheets("Game") devrait être ThisWorkbook.Worksheets("Game"). Puis commentez les gestionnaires d'erreur et l'exécuter à voir ce que la ligne est la question.

OriginalL'auteur knightrider | 2012-07-19