remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

pablogonzlz

XLDnaute Nouveau
Bonjour,

J'ai déjà trouvé beaucoup de réponses sur votre forum, mais la je sèche!

(Je poste un fichier en pièce jointes).

Je prend pour exemple une grande piscine (x,y) (Table#1)
Sur cette piscine je fait des essais, sur plusieurs point, du Ph (Table#2)

Donc ma table#1 représente une carte (x,y) de ma piscine et ma table#2 le Ph en fonction des cordonnées x,y

en utilisant SOMMEPROD, je peux remplir le Ph pour les coordonées précises des essais dans ma table#1.

Mais voila mon problème est que quand il n'y a pas de données cela remplit des 0 dans ma table#1.

question:
Quelle est la formule qui me permettrait de remplacer ces 0 par la valeur de ph (issue des essais) la plus proche? et ceci en prenant les deux directions (x,y)

J'espère être assez clair...

Merci d'avance pour tous les bon conseils que vous pourriez avoir, cela me rendrai un très grand service (et enlèverai ma boss de mon dos :) )


Pablo
 

Pièces jointes

  • Ph.xlsx
    31.3 KB · Affichages: 80

Dranreb

XLDnaute Barbatruc
Re : remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

Bonsoir.
Je pense que je pourrai trouver une somme de fonctions munies de coefficients qui puisse être évaluée pour tous les points désirés.
Et je pense aussi qu'il est possible de trouver les coefficients nécessaires pour que cette somme passe par tous les points mesurés.
Mais voilà, il faut définir la forme des fonctions. J'ai bien quelques idées, mais elle impliquent des questions de ma part:
D'abord: votre titre parle de x,y,z ce qui colle avec ma notion que l'eau d'une piscine constitue un volume. Or vous n'en parlez plus dans votre développement. Pourquoi ?
Ensuite: y aurait-il un un point de mesure central qui serait plus particulièrement représentatif du Ph moyen ?
Ne dites pas non, car j'aurai besoin de ça. Ou alors à défaut, voire mieux, les points les plus extrêmes seraient-il représentatifs d'un gradient de Ph dans le volume ? Combien de points ? Lesquels ?
P.S. Une dernière question: Pourquoi les X vont de 10 en 10 dans la table alors que les Y vont de 1 en 1 ?
À +
 
Dernière édition:

pablogonzlz

XLDnaute Nouveau
Re : remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

bonsoir Dranreb,

Le z du x,y,z correspond enfaite à la mesure de Ph à un point (x,y) , et non à la profondeur.
Je ne considère le Ph qu'à la surface, et non dans une colonne d'eau.

il n'y a pas de points plus ou moins représentatif, car nous cherchons à voir les variations du Ph de long en large du cours d'eau (piscine).
Mais le Ph tourne autour de 9,14 dans la réalité pour le centre de la "piscine".

Merci beaucoup pour cette attention que vous portez à mon problème.
 

Dranreb

XLDnaute Barbatruc
Re : remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

Je pense que je vais proposer quelque chose. Mais certains points de mesure seulement représenteront des sortes de sommets. Sinon on risque une insupportable dépendance à la valeur moyenne de l'allure de la surface virtuelle dont la hauteur représentera le Ph.

Oh et puis tenez, je vous envoie ce que j'avais déjà fait, c'était un problème très similaire.

Puis le votre.

À +
 

Pièces jointes

  • InterpoTerr.xls
    297 KB · Affichages: 70
  • InterpoTerr.xls
    297 KB · Affichages: 75
  • InterpoTerr.xls
    297 KB · Affichages: 73
  • Ph.xls
    45 KB · Affichages: 66
  • Ph.xls
    45 KB · Affichages: 75
  • Ph.xls
    45 KB · Affichages: 84
Dernière édition:

pablogonzlz

XLDnaute Nouveau
Re : remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

Bonjour Dranreb,

Tous d'abord... Waow!
C'est exactement ce que je cherche à faire.

Cependant je n'arrive pas à appliquer votre résolution sur mon fichier réel. J'ai essayé de copier/coller le code VBA, mais sans succès.

Aussi la table #1 affiche parfois des valeurs négatives et/ou trop élevées, surtout dans la colonne Y=60m.

Je vous joint un fichier plus complet des mesures

Merci beaucoup
 

Pièces jointes

  • Etude Physico chim_PH.xlsx
    203.4 KB · Affichages: 78

Dranreb

XLDnaute Barbatruc
Re : remplir les case vide d'un tableau (x,y,z) par la valeur la plus proche autour

Bonsoir.
Le module, si vous l'aviez mis, n'est pas passé sur un .xlsx. Joignez moi donc plutôt du .xls
Ce ne sont pas des SOMMEPROD qui doivent restituer les valeurs mais des produits de matrices.
Plus exactement en multipliant la matrice horizontale des n termes par la matrice verticale des n coefficients.
Révisez votre algèbre matricielle et vous verrez que cela aboutit forcément à une valeur unique.
La matrice horizontale des termes est obtenue par une fonction personnalisée Termes qui l'élabore selon des règles définies par la fonction RempLigne à partir de la table des coordonnées imposées (c'est la cuisine des sommets à partir du 5ième point) et des coordonnées x et y du point considéré.
Cette même fonction RempLigne est utilisée n fois par la fonction MatTerme pour remplir une matrice carrée reprenant comme coordonnées x, y celles de cette même table des points imposés. Le produit de l'inverse de cette matrice par la colonne des valeurs de pH donne la matrice verticale des coefficients à appliquer pour tous les points afin de retrouver ce pH.
Attention: il conviendra peut être de revoir les calculs dans RempLigne, sinon le fait que les valeurs x et y n'ont pas du tout le même ordre de grandeur me parait extrêmement gênant. Il faudra probablement diminuer l'influence de la coordonnée x sur le calcul des Termes sommets, voire celle de tous les termes utilisant x.
Peut être auriez vous intérêt à partir du IntpoTerr.xls : Il est plus complet et met lui même les formules qui conviennent.
Le mieux c'est de déplacez les cellules colorées en les glissant par leur bord.
Mettez de préférence les cellules bleues aux 4 coins car elles jouent un rôle différent dans la mesure ou elles ne déterminent pas des sommets, mais participent seulement comme toutes les autres au calcul d'une surface globale qui s'ajoute à l'ensemble. Choisissez bien leur emplacement pour éviter le phénomène que vous décrivez.

P.S Bon j'en suis là, je le joins.
Pour de meilleurs résultats il faudrait vraiment que les points cyan soient pratiquement dans les coins et presque éliminer les jaunes qui en sont trop près…

À +
 

Pièces jointes

  • Interpo_pH.zip
    248 KB · Affichages: 28
Dernière édition:

Statistiques des forums

Discussions
312 215
Messages
2 086 324
Membres
103 179
dernier inscrit
BERSEB50