Vba sous excel

Bonjour,

Suite à une exportation d'une base de données vers excel, je me suis retrouvé avec certains champs déplacés dans de mauvaises colonnes. J'ai donc décidé de passer par une macro modifiée avec vba pour les replacer. Mon problème vient du fait que j'aimerai ne faire une recherche des mauvais champs que sur une seule colonne, sinon il me déplace tous les champs, même s'ils sont bien placés.
Comment pourrais-je limiter la recherche à la première colonne ?

Merci
Guillaume

2 réponses

  1. Comme ça a chaud et en vitesse j'utiliserai la fonction inputbox pour indiquer quelle colonne je veux traiter.

    Dim Message, Title, Default, MyValue

    ' Définit le message.
    Message = "Entrez une valeur comprise entre 1 et 3"
    Title = "InputBox Demo" ' Définit le titre.
    Default = "1" ' Définition la valeur par défaut.
    ' Affiche le message, le titre et la valeur par défaut.
    MyValue = InputBox(Message, Title, Default)
    1. Bonjour,

      La dernière solution ne convenant pas, j'ai trouvé une autre solution qui fonctionne dont voici le code :

      Sub CommandButton1_Click()
      Dim chaine As String
      chaine = "a" + "1"
      essai (chaine)
      End Sub

      Sub essai(toto As String)
      Range(toto).Select
      ActiveCell.EntireColumn.Select
      Selection.Find(What:="laboratoire", After:=ActiveCell, LookIn:=xlFormulas _
      , LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
      MatchCase:=False).Activate
      Selection.FindNext(After:=ActiveCell).Activate
      End Sub

      Maintenant, au niveau de la recherche, j'aimerai mettre un compteur qui s'incrémente de 1 chaque fois que l'occurence de la recherche est trouvée. Etant limite allergique à VB, je n'arrive pas à placer une condition d'arrêt dans la boucle, sachant que je voudrais que cette boucle s'arrête dès que la colonne a été entièrement analysée.

      Si vous pouviez m'aider, je vous en serais reconnaissant. Merci

      Guillaume