produire un tableau "reorganise"  Sujet résolu

Pour toutes vos questions à propos d'Excel ...

Re: produire un tableau "reorganise"

Messagepar CAPUCIN » 04 Fév 2012, 17:48

TOUT A FAIT PARFAIT! :D
Pour te faire un petit resume de l'ensemble (et je te le dois bien), je peux maintenant editer sous excel un programme en language "assembleur" et envoye le resultat (grace au tableau "INTEL hex") vers l'exterieur du PC, par exemple afin de mettre le programme dans une memoire de type EEPROM. Tout ca, sur EXCEL!

Merci Banzai! :D

P.S. excuse les termes employe comme "hi byte" ce sont les termes que j'ai appris en electronique.
CAPUCIN
Membre fidèle
 
Messages: 376
Inscription: 05 Déc 2011, 05:22
Localisation: montreal
Version Excel: 2003 FR

Re: produire un tableau "reorganise"

Messagepar CAPUCIN » 04 Fév 2012, 22:38

salut Banzai, je viens de realiser qu'on traine une toute petite erreur depuis qu'on a passe de la version Capucin EQUIV017 a EQUIV018. Tu as remplacer le code que j'ai mis en bleu par le code en rouge et depuis ce temps lorsque dans une cellule la donnee commence par zero et qu'elle n'est pas suivi d'une lettre, exemple "02", seul le "2" aparait. Le code est dans le module "compilation" si je ne me trompe pas.
Je t'envoi le fichier EQUIV019. tu peux aussi corriger directement dans cette envoi.

Le probleme est sur la feuille "traitement". Regarde les cellule que j'ai mis en vert. Je t'ai mis un bouton pour essayer la macro "traitement" :)

Code: Tout sélectionner
Sub Traitement()
' On est dans la feuille Traitements
Dim J As Long
Dim Cel As Range
Dim Depart As String
Dim Kase
Dim Lg As Long
Dim Tablo
Dim I As Integer
Dim Reference As Integer

  Lg = Range("I" & Rows.Count).End(xlUp).Row
  Range("B2:G" & Lg).ClearContents
 
  With Application
    .ScreenUpdating = False
    Reference = .ReferenceStyle             ' Sauvegarde l'ancien type de référence sous le nom "reference"
   .ReferenceStyle = xlA1                  ' Pour les formules il faut Référence style A1
 End With
 
  ReDim Tablo(1 To Lg, 1 To 5)              ' Prépare un tableau qui va contenir le résulat des "traductions"
 
  For Each Kase In [Cat]                    ' Pour chaque élément de la zone des mnémoniques
   Set Cel = Range("I3:I" & Lg).Find(what:=Kase, LookIn:=xlValues, lookat:=xlWhole)    ' On vérifie si on le trouve dans la colonne I
   If Not Cel Is Nothing Then              ' Au moins une occurence
     Depart = Cel.Address                  ' Méthode classique de Find (voir aide)
     Do
        J = Cel.Row - 2                     ' Décalage entre la première ligne testée de la colonne I et le 1er élément du tableau (Tablo)
       If Tablo(J, 5) = "" Then            ' Tablo pas encore initialisé (par une autre mnémonique)
         For I = 1 To 4                    ' On recopie dans le tableau les 4 éléments associés à la mnémonique
           Tablo(J, I) = Kase.Offset(0, I) ' Nouvelle formule que l'on peut inscrire directement
         Next I
          Tablo(J, 5) = "X"                 ' On note ligne initialisée
       End If
        Set Cel = Range("I3:I" & Lg).FindNext(Cel)  ' On va voir si un autre élément de la colonne I est concerné
     Loop While Not Cel Is Nothing And Cel.Address <> Depart
    End If
  Next Kase

  Range("C3").Resize(Lg, 4) = Tablo         ' On écrit le tableau

  With Application
    .ReferenceStyle = Reference             ' On remet comme avant
   
  End With
  'desactivation des formules
<span style="color: #4000FF">  'Range("C2:F" & Lg).Select
 'Selection.Copy
' Selection.PasteSpecial Paste:=xlPasteValues, OPERATION:=xlNone, skipBlanks:=False, Transpose:=False</span>

  <span style="color: #BF0000">With Range("C2:F" & Lg)
    .Value = .Value
  End With</span>
 
End Sub





les couleurs bleu et rouge ne semblent pas avoir marche dans ce que je viens de t'envoyer , alors regarde le code au bas de la macro "desactiver les formules" le mien est en commentaire suivi du tien.
Fichiers joints
CAPUCIN Equiv V019.zip
(130.35 Kio) Téléchargé 4 fois
CAPUCIN
Membre fidèle
 
Messages: 376
Inscription: 05 Déc 2011, 05:22
Localisation: montreal
Version Excel: 2003 FR

Re: produire un tableau "reorganise"

Messagepar Banzai64 » 04 Fév 2012, 22:58

Bonsoir

Oui j'ai vu
Une question : Est-ce important pour la EEPROM , la valeur est identique ?

Pour la correction modifies la fin de la macro par
Code: Tout sélectionner
  With Range("C2:F" & Lg)
  .NumberFormat = "@"
    .Value = .Value
  End With
 
End Sub
 


Dis-moi si c'est ce que tu voulais ?
Image
Avatar de l’utilisateur
Banzai64
Passionné d'Excel
 
Messages: 4616
Inscription: 21 Nov 2010, 16:42
Localisation: Jurançon
Version Excel: 2003 FR

Re: produire un tableau "reorganise"

Messagepar CAPUCIN » 04 Fév 2012, 23:18

C'est corrige!
Pour ta question, ce n'est probablement pas une erreur pour l'envoi vers une memoire EEPROM, mais c'est plus lisible.

Merci Banzai et bonne soiree! :D
CAPUCIN
Membre fidèle
 
Messages: 376
Inscription: 05 Déc 2011, 05:22
Localisation: montreal
Version Excel: 2003 FR

Précédente

Retourner vers Excel - VBA

 


  • Sujets similaires
    Réponses
    Vus
    Dernier message

Utilisateurs en ligne

Utilisateurs parcourant ce forum: Google Adsense [Bot] et 6 invités