Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

interpolation de données manquantes dans un tableau

  • Initiateur de la discussion Initiateur de la discussion magarouchel
  • 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 !

M

magarouchel

Guest
Salut à tous,

Voila, j'ai un problème avec une extraction de données d'analyses labo.
La récupération de ces données n'est pas régulière et se fait dans l'onglet "Récup"

Ce que je souhaite, c'est pouvoir automatiser l'interpolation des valeurs les jours où il n'y a pas de relevé (par une fonction ce serait très cool, sinon du vba...)
Ces données sont ensuite affichées dans l'onglet "calcul", multipliée par le débit relevé et tracées

Je précise bien : je souhaite obtenir les valeurs interpolées dans mon onglet "Calcul"
Je ne veux pas uniquement les avoir dans le graphique!!

Merci pour votre aide,
magarouchel
 

Pièces jointes

Re : interpolation de données manquantes dans un tableau

Salut,

Ce que tu demandes, c'est modéliser ton probleme. Sans plus d'information, cela me semble impossible surtout que le débit et les analyses ne semblent pas etre corrélés...
Apres peut etre que le jour du mois est utile, peut etre que tu sais d'autre choses qui pourront te servir.

Suistrop
 
Re : interpolation de données manquantes dans un tableau

Salut suistrop,

En fait ce que je souhaite faire, c'est que pour chaque donnée manquante, excel puisse détecter tout seul les bornes de l'intervalle d'interpolation
Pour pouvoir ensuite lui appliquer une fonction telle que +PREVISON par exemple
Le seul problème ici, c'est que les analyses ne sont données à intervalle régulier
Donc y a t-il moyen que excel trouve de lui même l'amplitude de cet intervalle pour appliquer ensuite la fonction???

J'espère être à peu près clair...

magarouchel
 
Re : interpolation de données manquantes dans un tableau

Salut,

Si j'ai bien compris, regarde cet exemple dans ce fichier :
Code:
Sub interpol()
For i = 2 To Range("A65536").End(xlUp).Row
If Cells(i, 1) <> "" Then
Cells(i, 2) = Cells(i, 1)
Else
ligne_deb = Range("A" & i).End(xlUp).Row
ligne_fin = Range("A" & i).End(xlDown).Row
For y = ligne_deb + 1 To ligne_fin - 1
Cells(y, 2) = Cells(y - 1, 2) + (Cells(ligne_fin, 1) - Cells(ligne_deb, 1)) / (ligne_fin - ligne_deb)
Next y
i = y - 1
End If
Next i
End Sub
 

Pièces jointes

Re : interpolation de données manquantes dans un tableau

Salut,

Super, c'est exactement ce que je cherchais
Merci beaucoup pour ton aide suistrop
 
Re : interpolation de données manquantes dans un tableau

Bonjour
Je propose une variante:
VB:
Function Interpolé(Plg As Range) As Variant
Dim AC As Range, LMAx As Long, V As Variant, LDéb As Long, LCou As Long, L As Long
Set AC = Application.Caller
LMAx = AC.Rows.Count
V = Plg.Resize(LMAx).Value
LDéb = LMAx + 1
For LCou = 1 To LMAx
   If V(LCou, 1) <> "" Then
      For L = LDéb + 1 To LCou - 1
         V(L, 1) = V(LDéb, 1) + (V(LCou, 1) - V(LDéb, 1)) * (L - LDéb) / (LCou - LDéb)
         Next L
      LDéb = LCou
      End If
   Next LCou
Interpolé = V
End Function
Une fonction personnalisée matricielle.
dans l'exemple selectionner de D4 à D34:
Code:
=Interpolé(Récup!C4)
valider par Ctrl+Maj+Entrée
Pareil pour la colonne E
À+
 
Re : interpolation de données manquantes dans un tableau

Bonjour,
Excusez moi de relancer cette page mais je suis débutant dans l'utilisation des macros voir ignorant et je n'arrive pas à faire fonctionner le programme pourtant il suffit de copier coller le code dans un module et de rechercher la fonction il me semble...
J'ai à peu de chose près la même chose à effectuer c'est à dire que j'ai des relevée de données chaque jour mais il y'a quelques manque sur plusieurs jours et j'aimerai donc interpolés les valeurs. Lorsque je tente de faire marcher la fonction j'obtiens "#NOM?", la fonction n'est pourtant pas inconnue.. Merci d'avance
 
Re : interpolation de données manquantes dans un tableau

Bonjour
Attention les fonctions sont à placer dans un module ordinaire et pas dans le module de la feuille.
Cela dit avec un PETIT fichier exemple, on t'aide toujours plus efficacement sur xld
 
Re : interpolation de données manquantes dans un tableau

Merci de votre réponse misange, mais peut être que le problème vient d'autre part, enfaite lorsque j'ouvre le fichiers " TEST" au dessus ,afin de m'approprier la démarche, un message microsoft excel stipule " Les macros de ce classeur sont désactivés car le niveau de sécurité est élevé, les macros n'ont pas été signés numériquement blablablabla".
Ca à l'air vraiment très simple pourtant, je bloque sur un truc vraiment bête et je ne comprends pas !!
 
Re : interpolation de données manquantes dans un tableau

Bonjour
Nous ne connaissons même pas ta version d'excel (il est utile de remplir cette info dans ton profil, de la sorte elle apparait sous ton avatar).
Avant 2007, aller dans les options et activer les macros (je n'ai plus la version sous la main pour te redonner le détail) en mettant le niveau de sécurité sur moyen par exemple.
Avec 2007 et + : aller dans le bouton office ou l'onglet fichier/options/centre de gestion de la confidentialité /bouton paramètre de gestion de la confidentialité et règle tes paramètres pour accepter les macros dans les emplacements approuvés.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

M
Réponses
9
Affichages
980
Maikales
M
E
Réponses
3
Affichages
999
E
L
Réponses
8
Affichages
2 K
LauLauR
L
J
Réponses
5
Affichages
1 K
J
N
Réponses
0
Affichages
2 K
nicolasraque
N
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…