Maison >Tutoriel logiciel >Logiciel de bureau >Boucle Excel VBA à travers les colonnes
Oh. J'ai vérifié mon code précédent. On estime que cela peut être dû à des erreurs dans vos résultats iserror et vlookup ! ! !
Parce qu'il existe une formule derrière la génération vlookup et que les paramètres fournis à iserror sont erronés.
Je l'ai initialement converti en un format numérique, puis j'ai appliqué une erreur, puis tout s'est bien passé.
Mon code est le suivant :
Pour i = 2 Pour module_number - 1
Range("C" & i).Select : ActiveCell.Value = ActiveCell.Value : If IsError(ActiveCell.Value) Then ActiveCell.Value = 0 : Module_wrong = 1 : iublink = Cells(ActiveCell.Row, 1) : Quitter Sous
Suivant
Il vous suffit donc de diviser le code et de le convertir en valeurs numériques.
Bienvenue dans le groupe If Software Changes Life, travaillons ensemble pour améliorer l'efficacité du travail.
Public Sub aaaa()
Dim x As String, w As String
Dim z aussi longtemps
x = "Y"
w = "N"
Pour z = 2 à 10000
Si Cellules(z, 1) "" Alors
Cells(z, 2).FormulaR1C1 = "=IF(ISNUMBER(VLOOKUP(RC[-1],C[1],1,0)),"""" & x & """",""" " & w & """")"
Cellules(z, 2).Valeur = Cellules(z, 2).Valeur
Fin si
Suivant
Fin du sous-marin
----------------
vlookup renverra une valeur d'erreur lorsqu'il ne trouvera pas les données, il ne pourra donc pas être utilisé directement
Si vous devez utiliser vlookup, veuillez consulter le code suivant :
------------------------
Public Sub dsadsa()
Dim x As String, w As String
Dim z As Long, u As Variant
Dim o As Range : Set o = Worksheets("Sheet1").Range("c:c")
x = "Y"
w = "N"
Pour z = 2 à 6
Si Cellules(z, 1) "" Alors
En cas d'erreur, reprendre ensuite
u = Application.WorksheetFunction.VLookup(Sheets("sheet1").Cells(z, 1), o, 1, False)
Si Err.Number = 0 Alors
Cellules (z, 2) = x
Autre
Cellules(z, 2) = w
Fin si
Euh.Clair
Fin si
Suivant
Fin du sous-marin
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!