2017-03-20 1 views
0

Salut j'ai fonction d'extraire du numéro d'identité personnel polonais à la date de naissance. Mais la fonction ne fonctionne que dans la cellule actuelle. Comment modifier le code pour exécuter toutes les cellules de A2 - fin de la feuille de calcul.Excel VBA Fonction de boucle pour toutes les cellules

Worksheet

B2 - Code cellulaire

=IF(VALUE(MID(A2;3;2))>20;"20"&LEWY(A2;2);"19"&LEWY(A2;2))&MOD(MID(A2;3;2);20)&MID(A2;5;2) 
+0

Copiez et collez cette fonction dans les autres cellules ou faites-la glisser vers le bas. Il utilise une référence relative, il devrait donc fonctionner pour toutes les cellules de la colonne A. –

Répondre

0

Je pense que vous essayez de copier la formule de B2 tout le long des cellules dans la colonne A qui ont une entrée. Je pense que cela devrait faire ce que vous cherchez. Je suppose que c'est sur la feuille 1, si ce n'est pas vous pouvez modifier le code.

'Defines the parameter to count the rows being used in column A 
    lRow = Sheet1.Range("A2").End(xlDown).Row 

'Creates the formula for column B 
Sheet1.Range("B2") = "=IF(VALUE(MID(A2;3;2))>20;""20""&LEWY(A2;2);""19""&LEWY(A2;2))&MOD(MID(A2;3;2);20)&MID(A2;5;2)" 

'Copies and paste the formulas down to the last rows for column B in Sheet 1 
    Sheet1.Range("B2").Copy 
    Sheet1.Range("B3:B" & lRow).PasteSpecial Paste:=xlPasteFormulas