Création tableau via VBA

Bonjour à tous ,

Je dois réaliser un Excel qui devrait permettre de renseigner un parc machine (façon BD) facilement et sans erreurs de frappes éventuelles par ses utilisateurs.

J'ai donc commencé un petit programme en m'aidant des cours de VBA trouvés en dérivant sur le net.

Seulement à ce stade j'ai deux soucis :

1: je souhaiterai que l'utilisateur dans l'InputBox puisse avoir un menu déroulant listant (dans une liste déroulante) les informations préalablement rentrées par lui ou d'autres personnes afin qu'il n'ait pas à tout retaper à chaque fois.

2:Vous remarquerez que je veux de l'Excel qu'il puisse descendre d'une ligne à chaque fois qu'une ligne est rentrée dans le tableau, afin que la BD se créée toute seule. Seulement dans l'état actuel des choses il reste bloqué sur la première ligne.

Il y a également la colonne "Code" dont j'aimerai me servir pour codifier automatiquement les équipements sans que ça bouge par la suite (Genre avec une lettre ou un nombre pour chaque société, loc, ensemble, etc... ce qui donnerai quelque chose comme A1A1A, quelque chose du genre).^^

Enfin le bout de code que j'ai tapé est assez "lourd" à utiliser. si vous avez des suggestions supplémentaires pour rendre ça simple à comprendre et facile d'utilisation je suis preneur

Merci d'avance pour votre aide (si vous pouvez expliquer un peu lorsque vous utilisez des fonctions ardues je suis totalement preneur).

Si ce genre de soucis a déjà été réglé, je ne l'ai pas trouvé. n'hésitez pas à me link la page qui en traite et à me jeter des pierres

Sub tableau_parc()

I = 0
J = 0
J = J + 1

    Dim Tableau(5, 1000) As String

'nom des colonnes du tableau

    Tableau(0, 0) = "Code"
    Tableau(1, 0) = "Société"
    Tableau(2, 0) = "Localisation"
    Tableau(3, 0) = "Ensemble"
    Tableau(4, 0) = "Sous-Ensemble"
    Tableau(5, 0) = "Gros Equipement"

'demande de renseignements à l'utilisateur

    Société = InputBox("Rentrez le nom de la Société", "Colonne Société")
    Localisation = InputBox("Rentrez le nom de la Localisation", "Colonne Localisation")
    Ensemble = InputBox("Rentrez le nom de l'Ensemble", "Colonne Ensemble")
    Sous_Ensemble = InputBox("Rentrez le nom du Sous-Ensemble", "Colonne Sous-Ensemble")
    Gros_Equipement = InputBox("Rentrez le nom du Gros Equipement", "Colonne Gros Equipement")

'intégration des renseignement dans l'excel

    If Société <> "" Then Tableau(I + 1, J) = Société
        MsgBox Société & " Bien enregistré(e)"
    If Localisation <> "" Then Tableau(I + 2, J) = Localisation
        MsgBox Localisation & " Bien enregistré(e)"
    If Ensemble <> "" Then Tableau(I + 3, J) = Ensemble
        MsgBox Ensemble & " Bien enregistré(e)"
    If Sous_Ensemble <> "" Then Tableau(I + 4, J) = Sous_Ensemble
        MsgBox Sous_Ensemble & " Bien enregistré(e)"
    If Gros_Equipement <> "" Then Tableau(I + 5, J) = Gros_Equipement
        MsgBox Gros_Equipement & " Bien enregistré(e)"

'selectionne feuil2

Sheets("Feuil2").Select

   Range("A" & J) = Société
   Range("B" & J) = Localisation
   Range("C" & J) = Ensemble
   Range("D" & J) = Sous_Ensemble
   Range("E" & J) = Gros_Equipement

End Sub

Bonjour Denkaii.

Avec un fichier support tout sera plus clair pour nous.

Essaye d'en fournir un sans données confidentielles et avec ton code afin d'apporter une aide.

Bien reçu, voici un fichier test avec en commentaire ce que j'aimerai accomplir.

Merci d'avance pour le coup de main

9test.xlsm (20.65 Ko)

Voici une première solution.

J'ai essayé de décomposer au plus possible pour que tu y trouves ton bonheur.

14test.xlsm (26.92 Ko)

Bonjour,

J'ai regardé avec intérêt ta solution pour une étude de concernant,

Si tu peux m'aider à avancer par le biais d ton programme, ce serait super...

Je ne comprends pas comment augmenter le nombre de colonne de mon tableau

J'ai bidouillé mais pas le résultant souhaité...

Merci d'avance,

6test-6.xlsm (33.36 Ko)

Tu n'as pas modifié les boucles sur les combobox, voilà pourquoi ça ne fonctionne pas.

En effet il ne boucle que 5 combobox sur les 7 que tu as au final.

Essaye également d'utiliser le plus souvent possible des noms de contrôles faciles à repérer, au lieu de laisser combobox1, ce n'est pas parlant dans le code.

Le fichier modifié joint à ma réponse.

8test-286-29.xlsm (30.56 Ko)

C trop top !

Si je peux me permettre je souhaite créer une Feuille supplémentaire pour chaque nouvelle personne,

Avec Le 2 premières lettres du Nom"."2 premières lettres du prénom avec le contenu suivant AN.LE

Peux-tu m'aider ?

Merci pour tout !

Je ne suis pas parti sur ce fichier, vide de toutes procédures et userform.

J'ai repris l'ancien fichier et réalisé la copie d'une feuille de base avec le nouveau nom.

Si un onglet porte déjà le nom, il ajoute un indice.

18test-286-29.xlsm (60.90 Ko)

Super !

J'ai mis le temps pour t'écrire car je cherchais maintenant à ajouter le "nomFeuil" dans la première colonne, Code, sous forme de lien hypertexte qui permettrait d'y aller du tableau de base.

Tu peux m'aider à nouveau ?

Merciiiiiiiiiiiiii d'avance !

Bonjour,

As-tu encore du temps à m'accorder ?

En effet, je n'ai reçu aucune réponse de ta part...

Rechercher des sujets similaires à "creation tableau via vba"