XL 2013 Effacement problématique avec la fonction INDEX

  • Initiateur de la discussion Initiateur de la discussion job75
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

job75

XLDnaute Barbatruc

Pièces jointes

Boujour.
Chez moi: opération longue, mais l'effacement à l'air de s'être bien passé.
L'annulation est tout aussi longue mais rétablit les formules.

Édition: Mais guère plus d'une dizaine de secondes quand même pour l'effacement.
Pour le rétablissement c'est plus long, en fait il ne répond plus, là, en ce moment, lors d'une 2nde tentative des 2 opérations.
 
Dernière édition:
Bonjour le fil, le forum, job75, mapomme, Dranreb

@job75
Chez moi, Excel est entré en transe et ne réponds plus. 😉
(Ça fait déjà plus de trois minutes)
(Excel 2013 32 bits - W10 64 bits)

Est-ce que le phénomène se produit avec une plage de cellules moins conséquente?
(Pas pu tester, j'attends qu'Excel me rende la main)
 
Re,

Merci mapomme, Bernard, JM, Pierre d'avoir testé.

Apparemment les choses se passent mieux pour Pierre sur Excel 2010 et Bernard sur Excel 2016.

Effacement ou validation de n cellules c'est pareil, voyez le fichier joint et cette macro :
Code:
Sub Test_validation()
Dim n%, t
n = Val(InputBox("Nombre de cellules à valider sur G3:WQP3 :", "Test validation"))
If n < 1 Then Exit Sub
t = Timer
[G3].Resize(, n) = "=INDEX($B3:$C8002,1+INT((COLUMNS($G3:G3)-1)/2),1+MOD(COLUMNS($G3:G3)-1,2))"
MsgBox "Durée validation => " & Format(Timer - t, "0.00 \s"), , "Test validation"
End Sub
Avec n = 1000 il faut 16 secondes chez moi.

A+
 

Pièces jointes

Re

@pierrejean
Tu n'as pas vu ma question du message#6?

@job75
Je viens de réessayer en ayant qu'Excel d'ouvert (et ton seul classeur)
Excel passe directement en statut: Ne réponds pas
(j'ai appuyé sur SUPPR à 11h47, et toujours pas d'effacement ni de retour d'Excel à la normale
Je ne sais pas si cela joue
Processor: AMD-E 300 (Dual-Core) 1,30 Ghz | 4 Go de RAM

PS:11h56 toujours pas la main dans Excel.

NB: Je vais essayer avec Excel en mode sans échec
 
Dernière édition:
Re Pierre,

Oui ce n'est pas la 1ère fois que nos ordi se comportent différemment.

Note que pour le fichier "Fonction DECALER" avec n = 16000 cette macro :
Code:
Sub Test_validation()
Dim n%, t
n = Val(InputBox("Nombre de cellules à valider sur G3:WQP3 :", "Test validation"))
If n < 1 Then Exit Sub
t = Timer
[G3].Resize(, n) = "=OFFSET($B3,INT((COLUMNS($G3:G3)-1)/2),MOD(COLUMNS($G3:G3)-1,2))"
MsgBox "Durée validation => " & Format(Timer - t, "0.00 \s"), , "Test validation"
End Sub
s'exécute chez moi en 0,06 seconde.

A+
 
Dernière édition:
Re,

Allo la terre? 😉
(cf messages#6 et #9)

EDITION: Résultat du test de la macro* (sur un fichier vierge ou j'ai recopié les données en colonne B:C)
Durée validation
=> 0,20 s

*: macro avec DECALER
 
Dernière édition:
Re

@pierrejean
Peut-être qu'Excel préfère les puces Intel aux puces AMD alors 😉
Parce que même punition en VBA, Excel ne réponds plus
VB:
Sub Test_VAL_Index()
Dim n%, t
n = Val(InputBox("Nombre de cellules à valider sur G3:WQP3 :", 16000, "Test validation"))
If n < 1 Then Exit Sub
t = Timer
[G3].Resize(, n) = "=INDEX($B3:$C8002,1+INT((COLUMNS($G3:G3)-1)/2),1+MOD(COLUMNS($G3:G3)-1,2))"
Debug.Print "Durée validation => " & Format(Timer - t, "0.00 \s"), , "Test validation"
End Sub
Je vois pas pourquoi mon PC est à la ramasse ?!?

(Avec DECALER, c'est mieux, plus de plantage, mais loin du score de job75, voir mon précédent message)
 
Re,

Sur un fichier vierge avec juste B3:C8002 remplies les choses se passent à peu près normalement.

En effet avec n = 16000 (le maximum) la macro du post #7 s'exécute chez moi en 6,7 secondes.

Mais si je répète l'opération ça pédale dans la choucroute, je dois sortir par le Gestionnaire des tâches.

A+
 
Re,

Je sais pas ce qui se passe avec mon Excel
J'ai essayé de nouveau sur un classeur vierge
VB:
Sub Test_VAL_Index()
Dim n%, t
n = Val(InputBox("Nombre de cellules à valider sur G3:WQP3 :", "Test validation",16000))
If n < 1 Then Exit Sub
t = Timer
[G3].Resize(, n) = "=INDEX($B3:$C8002,1+INT((COLUMNS($G3:G3)-1)/2),1+MOD(COLUMNS($G3:G3)-1,2))"
Debug.Print "Durée validation => " & Format(Timer - t, "0.00 \s"), , "Test validation"
End Sub
Résultat
Durée validation => 38,79 s Test validation

Et tout comme job75, je dois tuer le processus Excel si j'essaie d'effacer la plage G3:WQP3
(manuellement ou par macro)
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Problème plantage
Réponses
14
Affichages
332
Réponses
6
Affichages
965
Réponses
1
Affichages
456
D
Réponses
4
Affichages
311
DidPouAxi
D
Retour