Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2603 connectés 

 

 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  44  45  46  ..  112  113  114  115  116  117
Auteur Sujet :

[Topic Unique] Excel : Keep calm and Pivot Table !

n°3216710
Ptit loup
Quand c'est flou, y'a un loup
Posté le 06-01-2016 à 15:04:33  profilanswer
 

Reprise du message précédent :
Pas compris le coup du profil... le sien ? le mien ? il dirait quoi le profil ??
 
Je ne cherche pas du tout à donner aucune réponse.. et sans pour autant dire qu'on est à l'école... le but de chacun est de progresser... et en cherchant soit même, on retient mieux. C'est d'ailleurs une très bonne attitude dans l'utilisation de l'outil informatique que d'être curieux, de chercher, de tester, de lire les docs, les aides sur la fonction, etc...
Sujet clos pour moi.

mood
Publicité
Posté le 06-01-2016 à 15:04:33  profilanswer
 

n°3216798
lazarock
And a pizza with pepperoni !
Posté le 07-01-2016 à 12:36:09  profilanswer
 

Bonjour,
 
J'ai une petite question :
J'ai un tableau avec 3 colonnes, dont 2 remplies.
La première, avec des nombres de 1 à 100 (je simplifie), la seconde avec un nombre allant de 200 à 2000.
La troisième est le résultat de la seconde multiplié par une valeur fixe (5), puis remultiplié par 13, à condition que la colonne 1 soit égale à 100.
Est-ce qu'il existe une formule/macro pour que le calcul se fasse automatiquement pour rétablir le résultat de la colonne 2 si celui de la colonne 1 n'est pas égal à 100 ?
 
De manière concrète, si j'ai le tableau suivant :
 
10    200  =(200*5*13)
100  300  =(300*5*13)
 
Comment faire pour automatiquement transformer la première ligne en :
100  2000  =(2000*5*13) ?
 
Et du coup que le calcul se fasse automatiquement sur toutes les lignes de mon tableau..
 
Je ne sais pas si je suis très clair ?


Message édité par lazarock le 07-01-2016 à 12:42:24

---------------
Expert es-COGIP2000, RH patenté
n°3216804
ccpapy
Posté le 07-01-2016 à 13:18:22  profilanswer
 

=SI(A1<100;A1*B1*5*13;B1*5*13)
 
si j'ai bien compris  :hello:

Message cité 1 fois
Message édité par ccpapy le 07-01-2016 à 13:19:08
n°3216814
lazarock
And a pizza with pepperoni !
Posté le 07-01-2016 à 14:12:36  profilanswer
 

ccpapy a écrit :

=SI(A1<100;A1*B1*5*13;B1*5*13)
 
si j'ai bien compris  :hello:


Je comprends pas pourquoi le A1*B1 ?
Et là ça calcule si et seulement si, A1<100, ce qui n'est pas le cas dans ce que je cherche...
 
Hum...
Je cherche à faire un calcul de la case A1 de manière à ce qu'elle corresponde à 100, et appliquer ce calcul sur la valeur de la case B1 automatiquement.
 
En fait, ce serait peut être 6 cases qu'il me faudrait...
 
A1   A1' (modifié pour être égal à 100)  B1  B1' (modifié avec la formule utilisée en A1') et C1, qui est la valeur finale, C1' cette valeur rétablie sur A1'
 
Exemple concret avec de vraies valeurs :
151  479            <- Je multiplie 479 par 5 (valeur du point), puis par 13 (nombre fixe)
130  370            <- Je cherche le nombre de point (B1) après avoir passé A1 pour le faire correspondre à 151, avant d'appliquer la règle de calcul ci-dessus
 
Et bien sûr, je n'ai pas que 130, j'ai aussi des 90, des 64 ... ... Du coup j'aimerai automatiser la chose :)


Message édité par lazarock le 07-01-2016 à 14:15:49

---------------
Expert es-COGIP2000, RH patenté
n°3216819
Ptit loup
Quand c'est flou, y'a un loup
Posté le 07-01-2016 à 15:23:56  profilanswer
 

A1*B1... dans ton exemple, 200x10 = 2000, donc la formule a été écrite ainsi, mais il vaut peut être mieux avoir 2000 "en dur" dans ton cas, seul toi peut le savoir dans ce cas là pour le coup.
 
Et ça calcule aussi dans le cas où A1 n'est pas < 100 => c'est la 2ème partie du SI => B1*5*13
 
Rien compris à ton coup des points B1, etc ensuite... :(
 
A la place de mettre 5 et 13 en dur dans tes formules, je te conseille d'utiliser des formules du type $A$1 (autre chose que $A$1 qui est déjà utilisé pour tes données dans ton exemple bien sûr) pour faire référence à une cellule "fixe"... les $ font que lorsque tu étends ta formule, il ne modifie pas la valeur
 
edit : plus je te relis, moins je comprends ce que tu veux faire.
Tu cherches à résoudre une équation ou qq chose comme ça ?

Message cité 1 fois
Message édité par Ptit loup le 07-01-2016 à 15:26:16
n°3216822
lazarock
And a pizza with pepperoni !
Posté le 07-01-2016 à 15:39:30  profilanswer
 

Ptit loup a écrit :

A1*B1... dans ton exemple, 200x10 = 2000, donc la formule a été écrite ainsi, mais il vaut peut être mieux avoir 2000 "en dur" dans ton cas, seul toi peut le savoir dans ce cas là pour le coup.
 
Et ça calcule aussi dans le cas où A1 n'est pas < 100 => c'est la 2ème partie du SI => B1*5*13
 
Rien compris à ton coup des points B1, etc ensuite... :(
 
A la place de mettre 5 et 13 en dur dans tes formules, je te conseille d'utiliser des formules du type $A$1 (autre chose que $A$1 qui est déjà utilisé pour tes données dans ton exemple bien sûr) pour faire référence à une cellule "fixe"... les $ font que lorsque tu étends ta formule, il ne modifie pas la valeur
 
edit : plus je te relis, moins je comprends ce que tu veux faire.
Tu cherches à résoudre une équation ou qq chose comme ça ?


Oui, je sais que c'est pas clair, désolé  :sweat:  
 
En gros, j'ai un tableau avec des personnes, leur rémunération en nombre de points (ça fonctionne comme ça chez nous), ainsi que leur temps de travail.
Je cherche à calculer le salaire "consolidé" pour chacun.
Pour ce faire, il faut que je passe tout le monde à temps plein (151,..). Mais ça fait énormément de monde !
Alors je cherche une formule qui me permette de faire le calcul X -> 151,.. à ma place, quelque soit la valeur de X, et d'appliquer la règle de calcul au nombre de points (qui se retrouverait de ce fait majoré).
 
L'objectif étant par la suite d'utiliser le nombre de points ainsi trouvé pour lui appliquer une autre règle de calcul : Le multiplier par la valeur du point pour avoir le salaire au mois, et le multiplier ensuite par 13 pour le salaire annuel + 13° mois.


---------------
Expert es-COGIP2000, RH patenté
n°3216826
Ptit loup
Quand c'est flou, y'a un loup
Posté le 07-01-2016 à 15:55:57  profilanswer
 

Môssieur est dans la fonction publique :)
 
Bon, pas tout compris à la règle, mais là pour le coup, il faut que tu utilises des fonctions mathématiques pour trouver le résultat de ce que tu cherches... regarde dans les fonctions statistiques, tu dois pouvoir trouver ce que tu veux.
Sinon, essaie de poser clairement la façon dont tu fais le calcul "de tête", et tu trouveras la solution...

n°3216828
lazarock
And a pizza with pepperoni !
Posté le 07-01-2016 à 16:03:16  profilanswer
 

Ptit loup a écrit :

Môssieur est dans la fonction publique :)
 
Bon, pas tout compris à la règle, mais là pour le coup, il faut que tu utilises des fonctions mathématiques pour trouver le résultat de ce que tu cherches... regarde dans les fonctions statistiques, tu dois pouvoir trouver ce que tu veux.
Sinon, essaie de poser clairement la façon dont tu fais le calcul "de tête", et tu trouveras la solution...


Même pas :D
 
Ouaip, je pense que je vais faire ça, là j'ai avancé et j'ai tout fait à la main avec une superbe formule qui ressemble à ça :
=SI(D5=A$5;O5;SI(D5=A$6;O5/B$6*100;SI(D5=A$7;O5/B$7*100;SI(D5=A$8;O5/B$8*100;SI(D5=A$9;O5/B$9*100;SI(D5=A$10;O5/B$10*100;SI(D5=A$11;O5/B$11*100)))))))
 
 [:lazarock]


---------------
Expert es-COGIP2000, RH patenté
n°3216834
Ptit loup
Quand c'est flou, y'a un loup
Posté le 07-01-2016 à 16:29:55  profilanswer
 

tu peux l'écrire avec façon algorithmique que ça soit plus lisible stp ? :)
ou ta feuille de calcul (avec des données fictives bien sûr)


Message édité par Ptit loup le 07-01-2016 à 16:31:27
n°3216841
Ptit loup
Quand c'est flou, y'a un loup
Posté le 07-01-2016 à 16:57:51  profilanswer
 

une règle de 3 sinon ?

mood
Publicité
Posté le 07-01-2016 à 16:57:51  profilanswer
 

n°3216844
ccpapy
Posté le 07-01-2016 à 17:13:56  profilanswer
 

oui, je pense qu'une vulgaire règle de 3 suffirait

n°3216926
lazarock
And a pizza with pepperoni !
Posté le 08-01-2016 à 10:20:41  profilanswer
 

En fait, la formule que j'ai copiée ci-dessus va chercher en A$* la valeur de temps de travail (A$5 va cherche un temps plein, les autres vont chercher un temps partiel), en B$* la coefficient trouvé via la règle de 3 précédemment effectuée pour chaque valeur de temps partiel.
 
 

     A                    B
 
5   151,67              100
6   130                 85,71240193
7   86,66               57,13720578
8   97,5                64,28430144
9   113,75              74,99835168
10  146,25              96,42645217
11  151,67              100


La 11° ligne est juste là pour le contrôle


Message édité par lazarock le 08-01-2016 à 10:23:05

---------------
Expert es-COGIP2000, RH patenté
n°3216934
Ptit loup
Quand c'est flou, y'a un loup
Posté le 08-01-2016 à 10:53:42  profilanswer
 

Du coup tu as trouvé comment faire ? (parce que pour moi c'est pas plus clair si tu veux qu'on t'aide... il faut nous donner qq exemples et + de données que 2 lignes, en indiquant ce que tu connais, et ce que tu cherches)

n°3216969
lazarock
And a pizza with pepperoni !
Posté le 08-01-2016 à 14:04:45  profilanswer
 

Oui oui j'ai trouvé finalement, merci, je posterai sûrement un extrait du excel dès que je l'aurai finalisé et que j'en aurai modifié les données :jap:


Message édité par lazarock le 08-01-2016 à 14:04:54

---------------
Expert es-COGIP2000, RH patenté
n°3221864
Broscas
Posté le 19-02-2016 à 10:02:19  profilanswer
 

Bonjour,
 
Petite question, je cherche à mettre au point un publipostage de réalisation de bons de commande, mais pour ça j'ai besoin d'extraire toute les données non vides de la dite commande. (comprendre par là que comme les commandes changement toutes les semaines, il faudrait une formule/macro pour ne garder que les articles commandés).
 
C'est donc un premier fichier excel avec un onglet 1 d'une centaine de lignes, dont il ne faut extraire que celles où il y a des produits commandés (un produit/ligne).
Soucis, je n'y arrive pas, je tatonne mais n'arrive pas à faire ce que je veux et je me retrouve avec soit des espaces entre mes lignes sur l'onglet 2, soit carrément des doublons.
 
Exemple :  
VASQUE
CIMENT
CHAUX
CHAUX
CHAUX
CHAUX
CHAUX
CHAUX
CHAUX
CHAUX
CHAUX
 
etc... Jusqu'à ce que je trouve un autre produit commandé, sans lien avec la quantité demandée.
 
Comment faire pour avoir une formule dynamique qui me permette de ne récupérer que les lignes non vides sans créer de doublons ?
 
J'ai tenté quelques formules mais elles sont gigantesques et pas optimisées.
 
Je pensais à une macro, mais je ne sais pas comment faire..
 
Merci par avance pour votre aide :jap:
 
edit : Trouvé !
 
Sub SansDoublons()
Application.ScreenUpdating = False
    With Range("a1:a" & [a65000].End(xlUp).Row)
        .AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("b1" ), Unique:=True
        .Offset(0, 1).Sort Key1:=Range("B1" ), Order1:=xlAscending, Header:=xlYes
    End With
End Sub
 
Il me fait exactement ce que je cherche :jap:


Message édité par Broscas le 19-02-2016 à 11:27:11
n°3224614
Dantiste
Posté le 09-03-2016 à 21:32:17  profilanswer
 


 
Hello :hello:
 
Je tente ma chance ici, j'ai cherché partout, rien trouvé  :pfff:  
 
Je cherche un tableau Excel à télécharger (un lien svp), qui donne les heures de lever et de coucher du soleil sur Paris, pour 366 jours en 2016 :D
 
La finalité, c'est modéliser un agenda du sommeil pour un étudiant en médecine. Saisies d'heures et calculs à la clé, ca me cause aucun souci, juste remplir un tableau et le transposer en graphe.
 
L'ensoleillement, la couverture nuageuse ou la lune j'en ai pas besoin...
 
Merci d'avance  [:pika-pika]  
 


---------------
Mariupol, heroes forever. - Zelensky, Dudaev. - Boum !
n°3224616
SuppotDeSa​Tante
Aka dje69r
Posté le 09-03-2016 à 22:02:42  profilanswer
 

A telecharger je sais pas...
Mais en 10mn tu as ton tableau avec ça :
http://www.timeanddate.com/sun/france/paris?month=1
Juste à changer le 1 jusqu'à 12 en passant par l'onglet Données, Web et en mettant le lien en A1, ensuite soit sur un autre onglet pour février, soit en A36 voir en N1

 


Edit, je me faisais chier devant la téloche : http://dje69r.free.fr/DantisteSunset.xlsx

Message cité 1 fois
Message édité par SuppotDeSaTante le 09-03-2016 à 22:24:44

---------------
Soyez malin, louez entre voisins !
n°3224699
Dantiste
Posté le 10-03-2016 à 15:01:37  profilanswer
 

SuppotDeSaTante a écrit :

A telecharger je sais pas...
Mais en 10mn tu as ton tableau avec ça :
http://www.timeanddate.com/sun/france/paris?month=1
Juste à changer le 1 jusqu'à 12 en passant par l'onglet Données, Web et en mettant le lien en A1, ensuite soit sur un autre onglet pour février, soit en A36 voir en N1
 
 
Edit, je me faisais chier devant la téloche : http://dje69r.free.fr/DantisteSunset.xlsx


 
 
Ouaouuuuh !!!!! [:dolores:1]
 
 
 
[:-cas-:3]
 
 
[:haha in love]
 
 
Merci  :jap:  
 


---------------
Mariupol, heroes forever. - Zelensky, Dudaev. - Boum !
n°3224741
SuppotDeSa​Tante
Aka dje69r
Posté le 10-03-2016 à 21:47:11  profilanswer
 
n°3225270
scoresby
Sheep Power !
Posté le 15-03-2016 à 17:21:41  profilanswer
 

Bonjour à tous !
 
J'ai une requête à vous soumettre sur du code VBA sous excel :
 
Actuellement, ma macro m'affiche un certain nombre d'informations en fonction de valeurs de cellules dans un commentaire (Cela m'évite d'avoir plusieurs colonnes à afficher pour ces infos).
Pour séparer ces informations, au début de chaque ligne de commentaire j'ai mis chr(10). Mais, comme c'est exactement ce que je lui demande et il fait tout ce qu'on lui dit il effectue un saut de ligne, même quand il n'y a pas de texte avant.
 
Voici le code en brut :

Code :
  1. If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  2.    If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 <> 0 Then
  3.       .Comment.Text Text:=Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  4.    End If
  5.    If Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Then
  6.       .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  7.    End If
  8.    If Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Then
  9.        .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE", Start:=40
  10.    End If
  11.    If Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  12.        .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE", Start:=90
  13.    End If


Ce que je voudrais faire, c'est supprimer les sauts de ligne si il n'y a pas de texte avant. Je me doute bien qu'avec une boucle if cela doit être possible mais comme vous pouvez le constater mon code est déjà assez lourd comme ça ...  
 
Donc si vous avez une solution simple, je suis preneur !
 
Merci et bonne journée !  :jap:

n°3225373
Ptit loup
Quand c'est flou, y'a un loup
Posté le 16-03-2016 à 15:14:56  profilanswer
 

Tu as juste à tester en plus si la zone contient du texte....
(d'un point de vue sémantique sinon... l'instruction "if" n'est pas une boucle :) )

n°3225400
SuppotDeSa​Tante
Aka dje69r
Posté le 16-03-2016 à 17:06:52  profilanswer
 

Ou tout mettre dans une string, et à la fin tu supprimes le RC s'il y est
 
Edit, un truc comme ça devrait le faire :

Code :
  1. Dim MonComment As String
  2.    MonComment = ""
  3.    
  4.    If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Or _
  5.        Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Or _
  6.        Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Or _
  7.        Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  8.    
  9.    
  10.        If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 <> 0 Then
  11.            MonComment = Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  12.            '.Comment.Text Text:=Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  13.        
  14.        End If
  15.        
  16.        
  17.        If Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Then
  18.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO"
  19.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  20.        
  21.        End If
  22.        
  23.        
  24.        If Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Then
  25.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE"
  26.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE", Start:=40
  27.        
  28.        End If
  29.        
  30.        
  31.        If Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  32.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE"
  33.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE", Start:=90
  34.        
  35.        End If
  36.    
  37.    End If
  38.  
  39.    'Suppr le retour Chariot du début
  40.    If Asc(Left(MonComment, 1)) = 13 Then MonComment = Right(MonComment, Len(MonComment) - 2)


 
NB : vbCrLf met le retour chariot et le saut de ligne  
VbLf = Chr(10) = Line Feed = Saut de Ligne
vbCr = Chr(13) = Carriage Return = Retour Chariot
vbCrLf = Chr(13) & Chr(10) = Retour Chariot et Saut de Ligne


Message édité par SuppotDeSaTante le 16-03-2016 à 17:27:09

---------------
Soyez malin, louez entre voisins !
n°3225997
scoresby
Sheep Power !
Posté le 21-03-2016 à 18:01:59  profilanswer
 

Bonjour à tous !
 
Déjà, merci pour vos deux réponses, djer69r et Ptit loup, cela m'aide à voir ce que je recherche.
J'ai toutefois quelques questions :
 
@Ptit loup : Y a t'il une manière de tester cette présence/absence de texte autrement qu'avec IF ? Car c'est ce que j'ai fait et je trouve ça un peu lourd comme écriture :

Code :
  1. If Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Then
  2.  If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Then
  3.  .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  4.  Else: .Comment.Text Text:=Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  5.  End If
  6. End If


 
@djer69r : Je comprends l'idée, même si ta dernière ligne me laisse sans voix (Tu testes si le premier caractère du commentaire est un retour chariot et si oui tu "déplaces" ton commentaire en le faisant commencer plus loin ? Ou pas du tout ?)
Mon problème est qu'en modifiant le code à ta manière, plus rien ne s'écrit dans mes commentaires ...  
 
Enfin bon, mon code marche, c'est juste hyper lourd mais au moins ça marche donc si vous trouvez plus simple je suis preneur, sinon je le laisserai tel quel !

Code :
  1. Dim i As Integer
  2. Dim j As Integer
  3.  
  4. Sheets("Déclaration Réception" ).Select
  5. For j = 5 To 14
  6.    With Range("D" & j)
  7.        .ClearComments
  8.        For i = 1 To 600
  9.            If Range("B" & j).Value = Sheets("Résumé Codage Air" ).Range("B" & i).Value Then
  10.                If .Comment Is Nothing Then Range("D" & j).AddComment
  11.                    .Comment.Shape.OLEFormat.Object.Font.Name = "Tverdana"
  12.                    .Comment.Shape.OLEFormat.Object.Font.Size = 16
  13.                    .Comment.Shape.OLEFormat.Object.Font.FontStyle = "Normal"
  14.                    .Comment.Shape.TextFrame.AutoSize = True
  15.                    If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Or Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  16.                        
  17.                        If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Then
  18.                            .Comment.Text Text:=Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  19.                        End If
  20.                        
  21.                        If Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Then
  22.                            .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  23.                        End If
  24.                        
  25.                        If Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Then
  26.                            .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE", Start:=40
  27.                        End If
  28.                        
  29.                        If Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  30.                            .Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE", Start:=90
  31.                        End If
  32.                        
  33.                    Else
  34.                        .Comment.Delete
  35.                End If
  36.            End If
  37.            For Each C In ActiveSheet.Comments
  38.                C.Text Text:=Replace(C.Text, Application.UserName & ":" & Chr(10), "" )
  39.            Next C
  40.        Next
  41.    End With
  42. Next


 
Merci et bonne soirée !

n°3226001
SuppotDeSa​Tante
Aka dje69r
Posté le 21-03-2016 à 18:21:06  profilanswer
 

As tu testé mon code ?
J'ai pris soin de laisser ton code en commentaire

 

En fait tu incrémentes un commentaire d'une cellule
Donc j'incrémente une variable, MonComment

 

En effet, je n'ai pas mis la ligne pour mettre le commentaire...
Et oui je teste le si le 1er caractere de la variable est un retour chariot, si oui je prends tout ce qu'il y a droite de ce caractere

 


Ce qui donnerait bêtement (la dernière ligne )

 
Code :
  1. Dim MonComment As String
  2.    MonComment = ""
  3.    
  4.    If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 Or _
  5.        Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Or _
  6.        Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Or _
  7.        Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  8.    
  9.    
  10.        If Sheets("Résumé Codage Air" ).Range("G" & i).Value <> 0 <> 0 Then
  11.            MonComment = Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  12.            '.Comment.Text Text:=Sheets("Résumé Codage Air" ).Range("G" & i).Value & " EPBIdF"
  13.        
  14.        End If
  15.        
  16.        
  17.        If Sheets("Résumé Codage Air" ).Range("H" & i).Value <> 0 Then
  18.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO"
  19.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("H" & i).Value & " EPBO", Start:=20
  20.        
  21.        End If
  22.        
  23.        
  24.        If Sheets("Résumé Codage Air" ).Range("I" & i).Value <> 0 Then
  25.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE"
  26.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("I" & i).Value & " EPBE", Start:=40
  27.        
  28.        End If
  29.        
  30.        
  31.        If Sheets("Résumé Codage Air" ).Range("J" & i).Value <> 0 Then
  32.            MonComment = MonComment & vbCrLf & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE"
  33.            '.Comment.Text Text:=Chr(10) & Sheets("Résumé Codage Air" ).Range("J" & i).Value & " EPBSE", Start:=90
  34.        
  35.        End If
  36.    
  37.    End If
  38.  
  39.    'Suppr le retour Chariot du début
  40.    If Asc(Left(MonComment, 1)) = 13 Then MonComment = Right(MonComment, Len(MonComment) - 2)
  41.    .Comment.Text Text:=MonComment


Message édité par SuppotDeSaTante le 21-03-2016 à 18:22:51

---------------
Soyez malin, louez entre voisins !
n°3226818
foksa37
Posté le 30-03-2016 à 21:00:17  profilanswer
 

Bonjour,
 
est-il possible de construire un graph de manière automatique selon une certaine sélection de données ?
 
Par exemple j'effectue des calculs sur une feuille après avoir C/C des données de mesure. Je souhaite lancer les calculs et voir tracer les séries de données jusqu'à ce qu'une cellule ait pour valeur zéro, est ce possible de manière "automatique" par EXCEL ?
Merci !


Message édité par foksa37 le 30-03-2016 à 22:00:06
n°3226852
Ptit loup
Quand c'est flou, y'a un loup
Posté le 31-03-2016 à 13:50:43  profilanswer
 

foksa > Tu as 2 choses séparées dans ta question
 
Il y a d'un côté une condition d'arrêt pour un calcul (itératif ?) que tu fais... là il faudrait en dire plus
 
De l'autre côté, le traçage d'un graphe... tu peux très bien tracer ton graphe sur une série de données définie par une plage de cellule (jusque là tout est normal)... et venir modifier les valeurs de tes cellules ensuite, le graphe se rafraichit tout seul. Il te suffit donc de bien définir ta plage de données pour les séries que tu souhaites avoir.

n°3226903
foksa37
Posté le 31-03-2016 à 20:53:43  profilanswer
 

Ptit loup a écrit :

foksa > Tu as 2 choses séparées dans ta question
 
Il y a d'un côté une condition d'arrêt pour un calcul (itératif ?) que tu fais... là il faudrait en dire plus
 
De l'autre côté, le traçage d'un graphe... tu peux très bien tracer ton graphe sur une série de données définie par une plage de cellule (jusque là tout est normal)... et venir modifier les valeurs de tes cellules ensuite, le graphe se rafraichit tout seul. Il te suffit donc de bien définir ta plage de données pour les séries que tu souhaites avoir.


 
Salut Ptit loup,  
 
Il n'y a pas de condition d'arrêt pour un calcul : disons qu'à un moment donné l'évolution des valeurs précédentes fait que le calcul affecte 0 à une cellule.
Et je souhaitais tracer un graph avec cette cellule comme la dernière de la sélection de données, en gros faire une formule "conditionnelle" directement dans la définition des données du graph.  
 
 
 

n°3227263
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 05-04-2016 à 12:02:29  profilanswer
 

:hello:  
 
Salut à tous,
 
J'aurais besoin de votre aide pour savoir si ce que je veux faire est possible. J'ai ce fichier de planning à destination des RH : https://drive.google.com/file/d/0B7 [...] sp=sharing
 
Et je souhaiterais que les ETP totaux (ligne 12) se calculent automatiquement en fonction du remplissage de couleur effectué et de l'ETP concerné.
 
Ca serait vraiment cool que ça soit possible parce qu'en l'état le total est source d'erreur.
 
Merci d'avance :jap:


---------------
Steam ID
n°3227264
akanico
Captain Slow
Posté le 05-04-2016 à 12:11:14  profilanswer
 

Et si tu répétais le taux d'ETP dans chaque case? Tu serais beaucoup moins emmerdé.


---------------
Visites de cimetières -  INSTA - FB
n°3227265
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 05-04-2016 à 12:16:05  profilanswer
 

akanico a écrit :

Et si tu répétais le taux d'ETP dans chaque case? Tu serais beaucoup moins emmerdé.


C'est la première chose à laquelle j'ai pensé mais c'est rébarbatif.

 

En fait je voudrais que la personne qui utilise ce fichier n'est aucune question à se poser et se contente de colorier les cases :o

 

Après j'ai pensé à la mise en forme conditionnelle. Genre elle met un "P" pour présent, ça colorie la case dès qu'elle met "P" et ensuite je fais une formule somme.si en me basant sur le nombre de "P" et ça marche même pour ceux qui ne sont pas à temps plein :jap:

 

Sauf que ça va faire des "p" partout et c'est pas jojo :o

Message cité 2 fois
Message édité par bauer_attitude le 05-04-2016 à 12:16:52

---------------
Steam ID
n°3227266
akanico
Captain Slow
Posté le 05-04-2016 à 12:18:21  profilanswer
 

C'est plus un problème d'interface chaise/clavier alors.
 
Un copier/coller de la cellule d'ETP sur les jours de présence n'est pas très compliqué.


---------------
Visites de cimetières -  INSTA - FB
n°3227267
akanico
Captain Slow
Posté le 05-04-2016 à 12:20:02  profilanswer
 

1 couleur, c'est une personne ou c'est un taux d'ETP? (Bleu : 100%, Rose : 80%,....)

Message cité 1 fois
Message édité par akanico le 05-04-2016 à 12:20:26

---------------
Visites de cimetières -  INSTA - FB
n°3227268
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 05-04-2016 à 12:23:11  profilanswer
 

akanico a écrit :

C'est plus un problème d'interface chaise/clavier alors.

 

Un copier/coller de la cellule d'ETP sur les jours de présence n'est pas très compliqué.


C'est surtout qu'en terme de lisibilité c'est pas joli...

 

Je veux pas enculer les mouches mais répéter l'ETP dans chaque case ça va pas donner un truc présentable.

 

Et je préfère à la limite ma solution de mise en forme conditionnelle que de c/c l'ETP dans chaque case :o

 
akanico a écrit :

1 couleur, c'est une personne ou c'est un taux d'ETP? (Bleu : 100%, Rose : 80%,....)


Non une couleur = une personne :jap:

Message cité 1 fois
Message édité par bauer_attitude le 05-04-2016 à 12:24:06

---------------
Steam ID
n°3227270
akanico
Captain Slow
Posté le 05-04-2016 à 12:53:14  profilanswer
 

bauer_attitude a écrit :


Non une couleur = une personne :jap:


 
Dommage.


---------------
Visites de cimetières -  INSTA - FB
n°3227271
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 05-04-2016 à 13:24:45  profilanswer
 


Si c'était ça j'aurais pu faire quoi comme formule?


---------------
Steam ID
n°3227284
DjiDji5943​0
Posté le 05-04-2016 à 14:59:33  profilanswer
 

Bonjour,
 

bauer_attitude a écrit :


Sauf que ça va faire des "p" partout et c'est pas jojo :o


 
dans ta mfc, tu inclus la couleur de la police identique a celle du fond


Message édité par DjiDji59430 le 05-04-2016 à 15:00:00
n°3227295
lazarock
And a pizza with pepperoni !
Posté le 05-04-2016 à 15:31:54  profilanswer
 

bauer_attitude a écrit :


C'est la première chose à laquelle j'ai pensé mais c'est rébarbatif.
 
En fait je voudrais que la personne qui utilise ce fichier n'est aucune question à se poser et se contente de colorier les cases :o
 
Après j'ai pensé à la mise en forme conditionnelle. Genre elle met un "P" pour présent, ça colorie la case dès qu'elle met "P" et ensuite je fais une formule somme.si en me basant sur le nombre de "P" et ça marche même pour ceux qui ne sont pas à temps plein :jap:
 
Sauf que ça va faire des "p" partout et c'est pas jojo :o


Ou alors tu fais une mise en forme conditionnelle par couleur et tu colores les "P" de la couleur correspondante :jap:
 
Comme ça tu as des cases unies, et tu peux faire ton "somme.si" :)


---------------
Expert es-COGIP2000, RH patenté
n°3227304
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 05-04-2016 à 16:37:23  profilanswer
 

Ah oui pas bête :D


---------------
Steam ID
n°3228799
bauer_atti​tude
Bonne fête du voile d'hiver
Posté le 18-04-2016 à 16:47:41  profilanswer
 

C'est encore moi :D
 
Est-ce que vous savez si c'est possible d'afficher une liste de produits entière en fonction d'un choix fait dans une liste déroulante?
 
Je m'explique : je voudrais faire un fichier de commande destiné au magasin de ma boîte.
 
Les différents services devraient aller sur ce fichier, choisir le nom de leur service (genre "pôle désanusseur" ) et en fonction du choix du service, ça afficherait uniquement les produits qu'ils ont le droit de commander.
 
Merci d'avance :jap:


---------------
Steam ID
n°3228845
DjiDji5943​0
Posté le 18-04-2016 à 23:58:42  profilanswer
 

Bonjour,
 
Oui, surtout avec un fichier test,  
Et si tu lis mes réponses (3 post plus haut).

n°3228921
Ptit loup
Quand c'est flou, y'a un loup
Posté le 19-04-2016 à 16:22:12  profilanswer
 

Avec une validation des données, tu peux choisir une liste de valeurs (plage de cellule par exemple).
 
Pour ta plage (liste), tu peux indiquer une formule qui dépend du coup de la valeur d'une autre cellule
 
Validation de données -> Autoriser => Liste  
Et dans "Source", tu indiques ta formule avec les plages et la condition, du genre :
=SI(A1="pole désanusseur";$B$1:$B$10;$C$1:$C$10)
 
 
Ensuite, tu peux faire des choses plus complexes, mais c'est pour montrer qu'on peut mettre une formule,...


Message édité par Ptit loup le 19-04-2016 à 16:26:08
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  44  45  46  ..  112  113  114  115  116  117

Aller à :
Ajouter une réponse
 

Sujets relatifs
[EXCEL] Faire une mise à jour dynamique de valeur entre champsExcel : rechercher et afficher une liste
[EXCEL] Conversion/multiplication de massequestions sur la téléphonie avec free en 512k
Excel: Comment insérer automatiquement un titre à chaque page ?[excel] largeur de colonne différente
[Excel] (N00B Inside :-/ )Je veux additionner ...2 questions urgentes : Remplacer Photoshop et achat de scanner
changer la police par défaut sous Excel[Excel] Comment faire pivoter une feuille ?
Plus de sujets relatifs à : [Topic Unique] Excel : Keep calm and Pivot Table !


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)