Bonjour à tous,
étant novice sur Excel, je me retrouve confronté à un problème de poids lors de l'élaboration d'une macro sur ce logiciel. J'espère que vous pourrez m'aider.
Je possède quatre feuilles contenant chacune 1 tableau de 80 colonnes et de 600 lignes. Je souhaiterai chercher dans les colonnes de ce tableau les valeurs qui se répètent trop souvent pour les supprimer.
En langage informatique, cela donnerait quelque chose du genre :
"pour la feuille active"
%initialisation
colonne_debut = 1
colonne_fin = 80
ligne_debut = 3
ligne_fin = 630
% pour chaque colonne, je balaye :
for i = colonne_debut to colonne_fin
limite = 0;
% pour chaque ligne, je regarde si la valeur de la cellule concernée se répète
for j = ligne_debut to ligne_fin
%pour chaque cellule concernée, je balaye les autres cellules de la colonne
for k = ligne_debut to ligne_fin
if valeurcellule(i,j) = valeurcellule(i,k)
limite = limite + 1;
% si + de 8 valeurs similaires, on les supprime
if limite >= 8
delcellule(i,*) = 'valeurcellule(i,j)' % action de supprimer (avec Selection.ClearContents? )
end
end
end
end
end
j'espère que vous m'avez suivi ^^, malheureusement, je ne connais pas très bien les équivalences pour le VBA et je n'arrive pas du tout à l'enregistrer de manière manuelle.
Merci pour votre aide et bonne fin de week-end
étant novice sur Excel, je me retrouve confronté à un problème de poids lors de l'élaboration d'une macro sur ce logiciel. J'espère que vous pourrez m'aider.
Je possède quatre feuilles contenant chacune 1 tableau de 80 colonnes et de 600 lignes. Je souhaiterai chercher dans les colonnes de ce tableau les valeurs qui se répètent trop souvent pour les supprimer.
En langage informatique, cela donnerait quelque chose du genre :
"pour la feuille active"
%initialisation
colonne_debut = 1
colonne_fin = 80
ligne_debut = 3
ligne_fin = 630
% pour chaque colonne, je balaye :
for i = colonne_debut to colonne_fin
limite = 0;
% pour chaque ligne, je regarde si la valeur de la cellule concernée se répète
for j = ligne_debut to ligne_fin
%pour chaque cellule concernée, je balaye les autres cellules de la colonne
for k = ligne_debut to ligne_fin
if valeurcellule(i,j) = valeurcellule(i,k)
limite = limite + 1;
% si + de 8 valeurs similaires, on les supprime
if limite >= 8
delcellule(i,*) = 'valeurcellule(i,j)' % action de supprimer (avec Selection.ClearContents? )
end
end
end
end
end
j'espère que vous m'avez suivi ^^, malheureusement, je ne connais pas très bien les équivalences pour le VBA et je n'arrive pas du tout à l'enregistrer de manière manuelle.
Merci pour votre aide et bonne fin de week-end