Problème ajustement hauteur de cellule automatique

number8326200

XLDnaute Nouveau
Bonjour,

J'utilise la fonction "RECHERCHEV" pour importer des descriptions d'articles issues d'une base de donnée, or quand le descriptif est inséré automatiquement dans la cellule, on ne voit qu'une seule partie du texte, j'ai essayé la fonction "retour a la ligne" ainsi que la fonction hauteur de ligne automatique mais rien me change ...

Autre soucis, j'aimerai "regrouper des cellules" (je ne connais pas le terme exact) en gros c'est que lors du changement de hauteur de ligne, mes 5-6 lignes en bas de pages changent automatiquement de page ensemble et pas que la moitié des lignes passe seulement dans l'autre page.

Auriez-vous une idée s'il vous plait ... ???

Cordialement
 

job75

XLDnaute Barbatruc
Re : Problème ajustement hauteur de cellule automatique

Re,

Bon j'ai finalement mis mon propre mot de passe : JOB75 :cool:

Il suffit de mettre cette macro dans le code de la feuille "Devis" :

Code:
Private Sub Worksheet_Calculate()
Me.Unprotect "JOB75" 'mot de passe
Rows("15:" & Rows.Count).AutoFit 'ajustement automatique
Me.Protect "JOB75"
End Sub
Elle s'exécute chaque fois qu'une formule de la feuille est recalculée.

Pour ce qui est des cellules en bas de page, il suffit dans l'onglet Mise en page de mettre Largeur et Hauteur sur 1 page.

Fichier joint enregistré en .xlsm (car il y a une macro).

A+
 

Pièces jointes

  • Aideinternet(1).xlsm
    21.5 KB · Affichages: 74

Regueiro

XLDnaute Impliqué
Re : Problème ajustement hauteur de cellule automatique

Bonsoir à tous, number8326200, job75
Une variante avec une procédure évenementielle.
voir sur la feuille DEVIS 1 ( en Rouge )
Pour le Range(A15:A28) = RechercheV en VBA = Application.VLookup
Pour le Range(C15:C28) = La formule de calcul en G.

J'ai également transformé la base de donnée en tableau ( Tableau1).
Plus pratique en cas de rajout de données.
Rajouter le code TVA pour chaques articles.


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
   If Not Intersect([A15:A28], Target) Is Nothing And Target.Count = 1 Then
       If Target <> "" Then
        Target.Offset(, 1) = Application.VLookup(Target, [tableau1], 2, False)      ' = Article
        Target.Offset(, 3) = Application.VLookup(Target, [tableau1], 3, False)      '= Unité
        Target.Offset(, 4) = Application.VLookup(Target, [tableau1], 4, False)      '= Prix unitaire
        Target.Offset(, 5) = Application.VLookup(Target, [tableau1], 5, False)        '= TVA

        Target.Resize(1, 7).VerticalAlignment = xlTop
        Target.EntireRow.WrapText = True        'Renvoyer a la ligne automatiquement
        
        Else
        Target.Resize(1, 7).ClearContents
        
      End If
   End If
      If Not Intersect([C15:C28], Target) Is Nothing And Target.Count = 1 Then
            If IsNumeric(Target) Then
                'code pour mettre la formule dans la colonne G
                Target.Offset(, 4).FormulaR1C1 = "=IF(OR(RC3="""",RC5=""""),"""",ROUND((RC3*RC5)*100/5,)/20)"
                Target.Offset(, 4).Font.Bold = True
                'Désactiver le code ci-dessous pour que la formule apparaisse
                Target.Offset(, 4).Value = Target.Offset(, 4).Value
            Else
                Target.Offset(, 4).Value = ""
            End If
        End If
End Sub

Voir PJ.
A+
 

Pièces jointes

  • XLD DEVIS _ Aideinternet V01.xlsm
    30.1 KB · Affichages: 50

Discussions similaires

Statistiques des forums

Discussions
312 790
Messages
2 092 126
Membres
105 227
dernier inscrit
Hamdi belhaj Farhat