Erreur d'exécution '13' Incompatibilité de Type SI valeur = l'état de la boucle
Fondamentalement, ce que je fais c'est que j'ai données dans les colonnes A-I et je suis en train de copier des données [les Colonnes D-G] par leur valeur dans D. Dans cette boucle, je suis à la recherche lors de l'entrée en D dit "1CME Réglées en argent du Beurre".
J'ai ensuite commencer dans la colonne K (=11) j'ai coller. Alors je pile les lignes.
La boucle recommence et se lance à la recherche d'une valeur différente.
Mon problème est que j'ai couru le code d'amende pour de nombreuses descentes. Je n'ai pas changé le code, mais maintenant, je suis pas d'Erreur Run-Time Type '13' Incompatibilité. Est-il d'une certaine manière pour résoudre ce problème ou écrire un nouveau code?
Je suis en train d'apprendre VBA!
Merci!
iRow = 2
For Each i In Range("D2:D200")
If i.Value = "1CME Cash-Settled Butter" Then
Range(i.Offset(0, 0), i.Offset(0, 3)).Copy
Cells(iRow, 11).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
iRow = iRow + 1
End If
Next i
iRow = 30
For Each i In Range("D2:D200")
If i.Value = "-1CME Cash-Settled Butter" Then
Range(i.Offset(0, 0), i.Offset(0, 3)).Copy
Cells(iRow, 11).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
iRow = iRow + 1
End If
Next i
cstr(i.Value) = "1CME Cash-Settled Butter"
Essayer cette- Vérifiez si l'une des cellules a des erreurs de formule?
- il a travaillé!!!!!!!! Vous êtes génial. Merci beaucoup! Pourriez-vous expliquer brièvement pourquoi Cstr() fonctionne mieux? Dois-je remplacer mes autres boucles à l'aide de Cstr?
- Bienvenue DONC, favoritewordgoeshere.
- "1CME qui sont Réglées en Trésorerie Beurre" est une chaîne où j'ai est un objet de la plage. Cstr convertit la valeur de l'objet de la plage à la chaîne et puis vous pouvez faire la comparaison.
- Je vois que vous avez ignoré mon commentaire. Je crois et j'ai peut-être tort, mais l'un de vos cellules ont une formule d'erreur. Quelque chose comme
#N/A
ou#DIV/0!
ou quelque chose d'autre. Cecstr(i.Value)
est en train de faire est de convertir cette chaîne. Une autre alternative est d'utiliserIf i.Text = "-1CME Cash-Settled Butter"
- En fait je n'ai pas de formules entourant de mes données. Ils étaient de toutes les valeurs. Je vais utiliser je.Texte. Je m'excuse je n'ai pas l'adresse de votre commentaire. Merci à tous pour l'aide!
Vous devez vous connecter pour publier un commentaire.
Changement
i.Value
ài.Text
. Vous ne voulez pas de Valeur, parce que vous êtes le comparant à un entier. Vous souhaitez vérifier la Chaîne, et à l'aide dei.Text
va le faire.Vous pouvez également
cstr(i.Value)
, mais ce n'est pas la meilleure façon de le faire.