formule matricielle fichier sur réseau

C@thy

XLDnaute Barbatruc
Bonjour,

j'ai un GROS fichier sur réseau avec des N°s de service et des montants.

Sur mon disque dur j'ai un fichier Récap avec la liste de mes services (6) et je voudrais en face la somme de mes montants (qui se trouvent sur le réseau).

J'ai un problème avec la matricielle ou le SOMME.SI (qui est également une formule matricielle) :

elle marche très bien, mais lorsque je referme puis réouvre mon fichier récap, catastroph!!! ça ne marche plus, j'ai #VALEUR!

Je ne peux pas modifier le fichier sur réseau, je ne peux pas non plus alourdir mon fichier Récap en recopiant les données.

Y a-t-il une autre solution qui pourrait fonctionner???

Merciiiiiiiiiii de votre aide.

C@thy
 
Dernière édition:

TheLio

XLDnaute Accro
Re : formule matricielle fichier sur réseau

Hello,
Pour avoir eu des soucis qui s'apparentent aux tiens, à savoir la perte de validité de liens hypertext pour des fichiers en réseaux.
Je ne suis pas un spécialiste en la matière, mais j'en ai deduit que le phénomène est certainement du à des adresses IP de disques virtuels non statiques. Donc Impossible de retrouver les fichiers en questions.
La seule parade que j'aie trouvé, c'est d'enregistrer mon fichier initial sur le même disque (virtuel ou non) que les fichiers où il appelle ses références.

Edit: Peutêtre avec une macro qui revalide chacune de tes formules à l'ouverture
A voir...
A++
Lio
 
Dernière édition:

C@thy

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

Je te remercie de ta réponse, nous n'avons accès au serveur qu'en consultation, donc pas possible d'y enregistrer le fichier Récap...:mad:

une macro tu dis? Pourquoi pas...

Si des VBIstes passent dans le coin, ils sont les bienvenus!

Biz

C@thy
 

TheLio

XLDnaute Accro
Re : formule matricielle fichier sur réseau

Comme je l'ai dit plus haut,
Je suis une bille en VBA...
Mais si j'ai bien compris le fonctionnemet du truc, ça devrait être qqch comme ça :
Sub Macro4()

Dim Cell As Range
Application.ScreenUpdating = False
Selection.SpecialCells(xlCellTypeFormulas, 23).Select
For Each Cell In Selection
SendKeys "{ENTER}"
Next Cell
Application.ScreenUpdating = True
End Sub
Il faut peutêtre demander à un expert qui rôde par là si je n'ai pas fait une boulette
A++
Lio

Edit : J'ai rajouté des screenUpdating, car après un test sur 35'000 cellules, j'ai encore les yeux qui papillonnent
 
Dernière édition:

TheLio

XLDnaute Accro
Re : formule matricielle fichier sur réseau

C'est encore moi,:p
N'étant pas sur de mon coup, j'ai demandé à wilfried_42 ce qu'il en pensait, voici sa réponse:
Bonjour TheLio :)



Sub Macro4()
Dim Cell As Range
Application.ScreenUpdating = False
Selection.SpecialCells(xlCellTypeFormulas, 23).Select
For Each Cell In Selection
SendKeys "{ENTER}" Next Cell
Application.ScreenUpdating = True
End Sub
avec ce code tu as un tout petit probleme, les Formules Matricielle redeviennent des Formules normales

j'ai déja fait une recalcul de ce type

Code:
Sub Macro4()
dim cel as range, maplage as range ' évite la selection set maplage = cells.SpecialCells(xlCellTypeFormulas) for each cel in maplage if cel.hasarray then cel.FormulaArray = cel.FormulaArray else cel.formula = cel.formula end if nextend sub
cette macro fonctionne sur la feuille active
j'ai fait ca de memoire, je n'ai pas testé
 

wilfried_42

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

Bonjour

un petit probleme de mise en forme (le copier coller)
Code:
Sub Macro4() 
dim cel as range, maplage as range 
      ' évite la selection 
      set maplage = cells.SpecialCells(xlCellTypeFormulas)
      for each cel in maplage
           if cel.hasarray then 
              cel.FormulaArray = cel.FormulaArray 
           else 
              cel.formula = cel.formula
           end if
      next
end sub
cette macro fonctionne sur la feuille active
j'ai fait ca de memoire, je n'ai pas testé
 
C

Compte Supprimé 979

Guest
Re : formule matricielle fichier sur réseau

Bonsoir C@thy,

Ton problème vient du fait que le calcul se fait bien quand les 2 fichiers sont ouverts

Si tu n'ouvres que Recap, tu auras effectivement un #Valeur!

Une méthode consiste à récupérer les données par la méthode ADO
(rien à voir avec les momes :D)
Mais pour cela il faut connaitre la structure du fichier principal
- nom de la feuille ou sont les infos
- libellé d'entête des colonnes ainsi que la lettre de la colonne

A+
 

C@thy

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

Merci à vous, grands maîtres du VBA.

(Eh oui, Tibo, c'est encore moi aussi!!!)

Effectivement le problème se produit lorsque l'autre fichier est fermé, évidemment.
Une piste pourrait être de l'ouvrir automatiquement par VBA lors de l'ouverture du 1er et de mettre à jour les liaisons. Je dis une bêtise, là ou pas???

Je teste vos pistes.

Bisous et MERICIiiiiiiiiiiiiiiiiiii!

C@thy
 

skun

XLDnaute Occasionnel
Re : formule matricielle fichier sur réseau

Bonjour à vous,

bon je suis une kiche mais je crois avoir eu un problème de ce genre il y a peu de temps, un problème de liaison avec des formules matricielles.

J'ai donc opté vers une solution VBA qui consite à calculer tes formules en VBA puis copier les valeurs seulement dans tes cellules, ce qui évite les boucles sans cesse.. les #VALEUR! et le ralentissement, les bug à l'ouverture de ton fichier.

la macro s'applique sur la plage Range("I10:Q10").Resize(Range("A65536").End(xlUp).Row - 9) pour ce cas

(c'est Catrice qui me l'a montrée, encore merci :) )

Sub test_QuandClic()
Range("I10").FormulaArray = "=ta formule version VBA"
Range("K10").FormulaArray = "=ta formule version VBA"
etc...
Set MaDest = Range("I10:Q10").Resize(Range("A65536").End(xlUp).Row - 9)
MaDest.Copy
MaDest.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

Une fois la macro adaptée à ton besoin, tu peux lancer ton fichier tranquil sans qu'il bug, puis via macro ou manuellement tu ouvre ton fichier sur le réso, puis tu clique sur le bouton lié à la macro qui te fera tout tes calculs, et inscrira les réponses dans tes cellules, tu pouras ensuite fermer ton fichier source, sans que l'autre bug.

j'espère que ca a pu t'aider à bientot
 
Dernière édition:

C@thy

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

Bon, j'ai testé vos macros, j'ai toujours mes #VALEUR!
(y m'énerve les nerfs!!!)

La méthode ADO, je veux bien, mais j'ai plein de fichiers comme ça, il faudrait une macro différente à chaque fois???

Bon, en tout cas on avance...

Merci à vous

C@thy
 

James007

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

C@thy,

Si tu as un petit moment, tu peux voir le site de Laurent
Ce lien n'existe plus
au sujet des formules matricielles pour y retrouver ton cas précis ...
et aussi son add-in pour attaquer des fichiers fermés ...

A+
 

James007

XLDnaute Barbatruc
Re : formule matricielle fichier sur réseau

Merci James007 c'est une mine d'informations.

Il va me falloir quelques décennies et des tonnes d'Aspro pour comprendre tout ça mais c'est fort intéressant!

C@thy

De rien C@thy ... !!! :)
Mais, tu le sais, toutes les tonnes du monde sont faites de kilos ...
qui ne sont, eux mêmes, constitués que de misérables et minuscules ...grammes ...!!! :)

A +
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 413
Messages
2 088 199
Membres
103 763
dernier inscrit
p.michaux