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

XL 2021 Code manufacturier et fabricant (Ram) suite projet en cours ( à tester s'il vous plait )

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
Bonjour à tous et à ceux qui on suivi ma discussion précédente,

Je cherche à pouvoir récupérer les codes fabricant de chaque manufacturier pour les ram ( barettes mémoires )
je suis tombé la dessus, du coup j'ai adapté en fonction.



Je vous joint un code que j'aimerai que vous testiez, et savoir le code (Marque) que vous obtenez en "B2" etc..
Exemple,



Et si le code ou fabricant ne figure pas me le dire (le code et éventuellement le fabricant si vous le connaissez).
En vous remerciant tous.
Nico.

VB:
Sub GetRAMInfo3()
    Dim objWMI As Object
    Dim objMemory As Object
    Dim colMemory As Object
    Dim RAMType As String
    Dim MANType As String
    Dim row As Integer
    Dim RAMSizeGB As Double

    row = 2

    Set objWMI = GetObject("winmgmts:\\.\root\CIMV2")
    Set colMemory = objWMI.ExecQuery("SELECT * FROM Win32_PhysicalMemory")

    ' Entêtes
    Range("A1").Value = "Type de RAM"
    Range("B1").Value = "Marque"
    Range("C1").Value = "Taille (Go)"

    For Each objMemory In colMemory
        Select Case objMemory.SMBIOSMemoryType
            Case 20
                RAMType = "DDR"
            Case 21
                RAMType = "DDR2"
            Case 22
                RAMType = "DDR2 FB-DIMM"
            Case 24
                RAMType = "DDR3"
            Case 26
                RAMType = "DDR4"
            Case 27
                RAMType = "DDR5"
            Case Else
                RAMType = "Type inconnu"
        End Select
   
        Select Case objMemory.Manufacturer
            Case "04CB"
                MANType = "(A-DATA)"
            Case "017A"
                MANType = "(Apacer)"
            Case "029E"
                MANType = "(Corsair)"
            Case "059B"
                MANType = "(Crucial)"
            Case "04CD"
                MANType = "(Crucial)"
            Case "0198"
                MANType = "(HyperX)"
            Case "00CE"
                MANType = "(Samsung)"
            Case Else
                MANType = "(Type inconnu)"
        End Select

        RAMSizeGB = objMemory.Capacity / (1024 ^ 3)
   
        Range("A" & row).Value = RAMType & " " & MANType
        Range("B" & row).Value = objMemory.Manufacturer
        Range("C" & row).Value = Format(RAMSizeGB, "0") & " Go"
        row = row + 1
    Next objMemory

    Set colMemory = Nothing
    Set objMemory = Nothing
    Set objWMI = Nothing

    Columns("A:C").EntireColumn.AutoFit
End Sub

 
Dernière édition:

jurassic pork

XLDnaute Occasionnel
ben ça marchera pas sur la plupart des PC. Il ne faut pas mettre de Case Else . Soit tu as directement le fabricant, soit tu as le code Jedec du Fabricant ( ce qui doit être plus rare). Le cas où tu as un fabricant inconnu c'est quand WMI n'arrive pas à lire l'information (comme dans le cas de TooFatBoy où c'est Manufacturerxx qui est renvoyé)
 
Dernière édition:

dysorthographie

XLDnaute Accro
Bonjour,
Rubberduck personnellement jamais utilisé.
Rubberduck VBA est un add-in open-source pour l'éditeur VBA (Visual Basic for Applications) qui fournit un ensemble d'outils puissants pour améliorer la productivité et la qualité du code VBA. Développé par la communauté, il est compatible avec Excel, Access, Word, et d'autres applications Microsoft Office utilisant VBA. En plus de faciliter les tests unitaires, Rubberduck ajoute des fonctionnalités de refactorisation, d’analyse de code, et bien plus encore. Voici ses principales caractéristiques :

1. Tests Unitaires

Rubberduck inclut un framework de tests unitaires similaire à ceux des autres langages de programmation. Il permet de créer, d’organiser et d'exécuter des tests directement dans l'éditeur VBA :

Configuration et exécution des tests : Permet de définir des procédures de test, avec des attributs spécifiques (@TestMethod, @TestInitialize, etc.) pour structurer les tests et gérer la configuration.

Assertions : Des méthodes d’assertion (Assert.AreEqual, Assert.IsTrue, etc.) facilitent la vérification des résultats.

Rapports de tests : Une fois les tests exécutés, Rubberduck fournit un rapport détaillé des tests réussis et échoués, identifiant clairement où se trouvent les erreurs.


2. Analyse Statique du Code

Rubberduck analyse votre code VBA pour repérer les erreurs potentielles et les problèmes de style :

Inspection du code : Il identifie les variables non utilisées, les noms de variables confus, les potentielles erreurs logiques, etc.

Alerte d'erreurs : Les erreurs de syntaxe, les erreurs courantes de logique et les violations de conventions de codage sont signalées dans une liste d’inspections.

Suggestions d'amélioration : Il propose des suggestions pour améliorer la clarté, la maintenabilité, et la performance du code.


3. Refactorisation

Rubberduck propose des outils pour restructurer votre code sans en modifier la fonctionnalité, ce qui facilite l’entretien et la lisibilité :

Renommer : Renomme les variables, méthodes et classes partout dans le projet.

Encapsulation des champs : Permet de créer des propriétés pour encapsuler les champs.

Extraire une méthode : Permet d’isoler une section de code dans une nouvelle procédure pour améliorer la modularité.

Réorganisation de code : Il aide à réorganiser les procédures et modules pour un code plus clair.


4. Explorateur de Projet

Rubberduck propose un explorateur de projet avancé, améliorant la vue standard de VBA :

Permet de naviguer facilement entre les modules, les classes et les procédures.

Offre des options de tri, de regroupement et de recherche avancées.


5. Navigation et Documentation

Rubberduck fournit des outils pour naviguer plus efficacement dans le code et générer automatiquement de la documentation :

Documentation automatique : Ajoute des commentaires et des descriptions aux fonctions, aux procédures et aux modules.

Navigation rapide : Facilite la recherche des références et la navigation dans les dépendances.


6. Support pour les Conventions de Codage

Rubberduck permet de définir et d'appliquer des conventions de codage pour VBA :

Standardisation des noms : Applique une convention de nommage pour les variables, fonctions, procédures, etc.

Recommandations de style : Propose des suggestions pour rendre le code conforme aux conventions de style standard.


Installation et Utilisation

Rubberduck est un logiciel gratuit que vous pouvez télécharger depuis son site GitHub. Une fois installé, il s’intègre directement dans l’éditeur VBA, en ajoutant une barre d’outils et des options supplémentaires.

Conclusion

Rubberduck VBA est un outil puissant pour les développeurs VBA qui souhaitent des fonctionnalités avancées comparables aux IDE modernes, améliorant la qualité, la maintenabilité, et la productivité de leur code VBA. Que ce soit pour les tests unitaires, la refactorisation, ou l
a documentation, il offre de nombreux avantages pour tout projet VBA.
 

TooFatBoy

XLDnaute Barbatruc
je m'en doutais un peu vu que tu n'as pas non plus l'info du fabricant. De quand date le BIOS de ton PC ?
Ca fait à peu près cinq ans que j'essaye de savoir quand j'ai acheté les éléments de mon PC, mais impossible de retrouver l'information.

Si ça peut te donner une idée : la CM est une ASUS P5Q-E.


[edit]
Une information de trouver je viens : 6 avril 2009
[/edit]
 

Gégé-45550

XLDnaute Accro
Bonjour,
Voici pour moi :
BarretteCapacité (GB)Vitesse (MHz)FabricantNuméro de sérieModèle
Barrette 18,00
2666​
KingstonF0B500E5KHX2666C16/8G
Barrette 28,00
2666​
Kingston2A746B4EKHX2666C16/8G
Barrette 38,00
2666​
KingstonE8B500AEKHX2666C16/8G
Barrette 48,00
2666​
Kingston0BF500A1KHX2666C16/8G
Cdlt
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…