J'ai un fichier ou une des feuilles et pleine de formule, jusqu'=E0 la
ligne 65000, avec un sommeprod de plusieurs crit=E8res, du coup malgr=E9
un bon ordi c'est environ une demi heure de calcul.
Est-il possible de demander un calcule que sur les autres feuilles et
une partie seulement de celle-ci ?
Est-il possible que ma s=E9lection du calcule soit faite en fonction du
r=E9sultat de la premi=E8re colonne de ma page, en claire je demande le
calcule de la premi=E8re colonne puis pour chaque ligne en fonction du
r=E9sultat, je calcule ou non la suite de la ligne ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe.R
Bonjour, Supposons nommée Zaza la plage à calculer ; en ayant réglé le calcul à "sur ordre" dans l'onglet calcul de outils / options, l'instruction VBA : range("Zaza").calculate devrait pouvoir faire l'affaire en étant placée dans la procédure change du module de la feuille concernée -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Bonjour à tous,
J'ai un fichier ou une des feuilles et pleine de formule, jusqu'à la ligne 65000, avec un sommeprod de plusieurs critères, du coup malgré un bon ordi c'est environ une demi heure de calcul.
Est-il possible de demander un calcule que sur les autres feuilles et une partie seulement de celle-ci ?
Est-il possible que ma sélection du calcule soit faite en fonction du résultat de la première colonne de ma page, en claire je demande le calcule de la première colonne puis pour chaque ligne en fonction du résultat, je calcule ou non la suite de la ligne ?
Par avance merci.
Bonjour,
Supposons nommée Zaza la plage à calculer ; en ayant réglé le calcul à "sur
ordre" dans l'onglet calcul de outils / options, l'instruction VBA :
range("Zaza").calculate
devrait pouvoir faire l'affaire en étant placée dans la procédure change du
module de la feuille concernée
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Ceno" <cedric-box@ifrance.com> a écrit dans le message de
news:ee822a49-e3d9-4852-ba10-ed5dc9bee94a@x38g2000yqj.googlegroups.com...
Bonjour à tous,
J'ai un fichier ou une des feuilles et pleine de formule, jusqu'à la
ligne 65000, avec un sommeprod de plusieurs critères, du coup malgré
un bon ordi c'est environ une demi heure de calcul.
Est-il possible de demander un calcule que sur les autres feuilles et
une partie seulement de celle-ci ?
Est-il possible que ma sélection du calcule soit faite en fonction du
résultat de la première colonne de ma page, en claire je demande le
calcule de la première colonne puis pour chaque ligne en fonction du
résultat, je calcule ou non la suite de la ligne ?
Bonjour, Supposons nommée Zaza la plage à calculer ; en ayant réglé le calcul à "sur ordre" dans l'onglet calcul de outils / options, l'instruction VBA : range("Zaza").calculate devrait pouvoir faire l'affaire en étant placée dans la procédure change du module de la feuille concernée -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Bonjour à tous,
J'ai un fichier ou une des feuilles et pleine de formule, jusqu'à la ligne 65000, avec un sommeprod de plusieurs critères, du coup malgré un bon ordi c'est environ une demi heure de calcul.
Est-il possible de demander un calcule que sur les autres feuilles et une partie seulement de celle-ci ?
Est-il possible que ma sélection du calcule soit faite en fonction du résultat de la première colonne de ma page, en claire je demande le calcule de la première colonne puis pour chaque ligne en fonction du résultat, je calcule ou non la suite de la ligne ?
Par avance merci.
Ceno
Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1 alors calculer la zone zaza, sinon dir si A12=1 calculer la zone zaza2...... jusqu'a A65000
Par avance merci
Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1
alors calculer la zone zaza, sinon dir si A12=1 calculer la zone
zaza2...... jusqu'a A65000
Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1 alors calculer la zone zaza, sinon dir si A12=1 calculer la zone zaza2...... jusqu'a A65000
Par avance merci
Philippe.R
Bonjour, Tu pourrais passer le nom de la plage en variable (chaque plage ayant été nommée dans la feuille) et renseigner ladite variable en fonction de la réalisation de ta condition
dim maZaza as string
test sur la condition permettant d'affecter à maZaza soit zaza1, zaza2,...
range(maZaza).calculate
Pour pouvoir te proposer un test sur la réalisation de la condition, il faudrait comprendre le raisonnement et ce qui se passe en colonne A
toutes les cellules de la colonne A peuvent elles répondre à la condition ? plusieurs cellules de la colonne peuvent elles répondre simultanément à la condition (=1 si j'ai bien suivi) ? si oui quelle priorité entre elles (1ère en partant du haut...) ? ou bien action particulière si plusieurs simultanément ? -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1 alors calculer la zone zaza, sinon dir si A12=1 calculer la zone zaza2...... jusqu'a A65000
Par avance merci
Bonjour,
Tu pourrais passer le nom de la plage en variable (chaque plage ayant été
nommée dans la feuille) et renseigner ladite variable en fonction de la
réalisation de ta condition
dim maZaza as string
test sur la condition permettant d'affecter à maZaza soit zaza1, zaza2,...
range(maZaza).calculate
Pour pouvoir te proposer un test sur la réalisation de la condition, il
faudrait comprendre le raisonnement et ce qui se passe en colonne A
toutes les cellules de la colonne A peuvent elles répondre à la condition ?
plusieurs cellules de la colonne peuvent elles répondre simultanément à la
condition (=1 si j'ai bien suivi) ?
si oui quelle priorité entre elles (1ère en partant du haut...) ?
ou bien action particulière si plusieurs simultanément ?
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Ceno" <cedric-box@ifrance.com> a écrit dans le message de
news:e49a0f85-e3a6-4515-8f46-04ddd3cda6c2@k41g2000yqn.googlegroups.com...
Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1
alors calculer la zone zaza, sinon dir si A12=1 calculer la zone
zaza2...... jusqu'a A65000
Bonjour, Tu pourrais passer le nom de la plage en variable (chaque plage ayant été nommée dans la feuille) et renseigner ladite variable en fonction de la réalisation de ta condition
dim maZaza as string
test sur la condition permettant d'affecter à maZaza soit zaza1, zaza2,...
range(maZaza).calculate
Pour pouvoir te proposer un test sur la réalisation de la condition, il faudrait comprendre le raisonnement et ce qui se passe en colonne A
toutes les cellules de la colonne A peuvent elles répondre à la condition ? plusieurs cellules de la colonne peuvent elles répondre simultanément à la condition (=1 si j'ai bien suivi) ? si oui quelle priorité entre elles (1ère en partant du haut...) ? ou bien action particulière si plusieurs simultanément ? -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Merci Philippe pour ta réponse, aurais-tu une astuce pour dire si A1=1 alors calculer la zone zaza, sinon dir si A12=1 calculer la zone zaza2...... jusqu'a A65000
Par avance merci
Ceno
Bonjour Philippe et encore merci,
En fait, j ai des paquets de 12 lignes environs, et dans la première de chaque paquet, il y a un nom, qui se reporte d un' autre feuille, mais il y en a jamais le même nombre, alors je voudrais calculer que les paquets ou il y a un nom en première ligne, donc en colonne A il y a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12 lignes qui suivent.
J espère que je suis compréhensible.
Bonjour Philippe et encore merci,
En fait, j ai des paquets de 12 lignes environs, et dans la première
de chaque paquet, il y a un nom, qui se reporte d un' autre feuille,
mais il y en a jamais le même nombre, alors je voudrais calculer que
les paquets ou il y a un nom en première ligne, donc en colonne A il y
a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet
ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12
lignes qui suivent.
En fait, j ai des paquets de 12 lignes environs, et dans la première de chaque paquet, il y a un nom, qui se reporte d un' autre feuille, mais il y en a jamais le même nombre, alors je voudrais calculer que les paquets ou il y a un nom en première ligne, donc en colonne A il y a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12 lignes qui suivent.
J espère que je suis compréhensible.
Philippe.R
Bonjour, Si j'ai bien compris, on faire comme suit ; le classeur étant en calcul sur ordre, dans le module de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range) Range("a:a").Calculate Nomme_et_calcule End Sub
dans un module ordinaire :
Sub Nomme_et_calcule() 'MPFE le 30/11/2008 'La colonne G est utilisée comme colonne de contrôle ' de l'étendue de la plage Dim i As Long, mAlig As Long, deRliG As Long 'on passe l'erreur générée si le nom n'existe pas On Error Resume Next ActiveWorkbook.Names("zaza").Delete 'on définit la dernière ligne deRliG = Range("a65536").End(xlUp).Row 'on suspend les évènements avant effacement de la ' plage de contrôle Application.EnableEvents = False Range("G1:G" & deRliG).Value = "" 'on recherche le dernier 1 en colonne A For i = deRliG To 1 Step -1 If Cells(i, 1).Value = 1 Then mAlig = i + 11 Exit For End If Next i 'on définit la plage nommée ActiveWorkbook.Names.Add Name:="zaza", RefersTo:= _ "þuil1!C1:F" & mAlig 'on calcule la plage Range("zaza").Calculate Range("G1:G" & mAlig).Value = "a" Application.EnableEvents = True End Sub
un petit fichier exemple : http://www.cijoint.fr/cjlink.php?file=cj200811/cijxhXgSRm.xls -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Bonjour Philippe et encore merci,
En fait, j ai des paquets de 12 lignes environs, et dans la première de chaque paquet, il y a un nom, qui se reporte d un' autre feuille, mais il y en a jamais le même nombre, alors je voudrais calculer que les paquets ou il y a un nom en première ligne, donc en colonne A il y a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12 lignes qui suivent.
J espère que je suis compréhensible.
Bonjour,
Si j'ai bien compris, on faire comme suit ; le classeur étant en calcul sur
ordre, dans le module de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range)
Range("a:a").Calculate
Nomme_et_calcule
End Sub
dans un module ordinaire :
Sub Nomme_et_calcule()
'MPFE le 30/11/2008
'La colonne G est utilisée comme colonne de contrôle
' de l'étendue de la plage
Dim i As Long, mAlig As Long, deRliG As Long
'on passe l'erreur générée si le nom n'existe pas
On Error Resume Next
ActiveWorkbook.Names("zaza").Delete
'on définit la dernière ligne
deRliG = Range("a65536").End(xlUp).Row
'on suspend les évènements avant effacement de la
' plage de contrôle
Application.EnableEvents = False
Range("G1:G" & deRliG).Value = ""
'on recherche le dernier 1 en colonne A
For i = deRliG To 1 Step -1
If Cells(i, 1).Value = 1 Then
mAlig = i + 11
Exit For
End If
Next i
'on définit la plage nommée
ActiveWorkbook.Names.Add Name:="zaza", RefersTo:= _
"þuil1!C1:F" & mAlig
'on calcule la plage
Range("zaza").Calculate
Range("G1:G" & mAlig).Value = "a"
Application.EnableEvents = True
End Sub
un petit fichier exemple :
http://www.cijoint.fr/cjlink.php?file=cj200811/cijxhXgSRm.xls
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Ceno" <cedric-box@ifrance.com> a écrit dans le message de
news:2b9fddf9-04a2-444e-84ea-311b39fa29fb@n10g2000yqm.googlegroups.com...
Bonjour Philippe et encore merci,
En fait, j ai des paquets de 12 lignes environs, et dans la première
de chaque paquet, il y a un nom, qui se reporte d un' autre feuille,
mais il y en a jamais le même nombre, alors je voudrais calculer que
les paquets ou il y a un nom en première ligne, donc en colonne A il y
a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet
ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12
lignes qui suivent.
Bonjour, Si j'ai bien compris, on faire comme suit ; le classeur étant en calcul sur ordre, dans le module de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range) Range("a:a").Calculate Nomme_et_calcule End Sub
dans un module ordinaire :
Sub Nomme_et_calcule() 'MPFE le 30/11/2008 'La colonne G est utilisée comme colonne de contrôle ' de l'étendue de la plage Dim i As Long, mAlig As Long, deRliG As Long 'on passe l'erreur générée si le nom n'existe pas On Error Resume Next ActiveWorkbook.Names("zaza").Delete 'on définit la dernière ligne deRliG = Range("a65536").End(xlUp).Row 'on suspend les évènements avant effacement de la ' plage de contrôle Application.EnableEvents = False Range("G1:G" & deRliG).Value = "" 'on recherche le dernier 1 en colonne A For i = deRliG To 1 Step -1 If Cells(i, 1).Value = 1 Then mAlig = i + 11 Exit For End If Next i 'on définit la plage nommée ActiveWorkbook.Names.Add Name:="zaza", RefersTo:= _ "þuil1!C1:F" & mAlig 'on calcule la plage Range("zaza").Calculate Range("G1:G" & mAlig).Value = "a" Application.EnableEvents = True End Sub
un petit fichier exemple : http://www.cijoint.fr/cjlink.php?file=cj200811/cijxhXgSRm.xls -- Avec plaisir http://dj.joss.free.fr/trombine.htm http://jacxl.free.fr/mpfe/trombino.html Philippe.R Pour se connecter au forum : http://www.excelabo.net/mpfe/connexion.php News://news.microsoft.com/microsoft.public.fr.excel "Ceno" a écrit dans le message de news: Bonjour Philippe et encore merci,
En fait, j ai des paquets de 12 lignes environs, et dans la première de chaque paquet, il y a un nom, qui se reporte d un' autre feuille, mais il y en a jamais le même nombre, alors je voudrais calculer que les paquets ou il y a un nom en première ligne, donc en colonne A il y a un test : si il y a un nom en B1 alors A1=1 sinon 0.
Alors je voudrais calculer de B1 à la dernière ligne du dernier paquet ou il y a un nom. donc jusqu'au dernier 1 de la colonne A + les 12 lignes qui suivent.