Adapter codes

Bonjour,

Je suis très loin de maitriser Vba, c'est pourquoi je viens vers vous pour trouver solution à mon problème.

Les codes Vba trouvé sur le Net sont fonctionnels, j'aimerai cependant qu'ils se limite à la plage A:AB jusqu'à la dernière ligne non vide. Ces lignes étant variables.

Je désirerai que la couleur se mette de la colonne A2:AB et jusque la dernière ligne non vide

Je vous remercie de bien vouloir corriger les codes, ce que je suis incapable de faire.

Feuille1(Base)

'La ligne de titre ne doit pas changer de couleur

'Colorer ligne active en jaune si clic en colonne "A" ou "B"

'Tous clics dans les autres cellules doivent être sans effet, mais permettant l'écriture

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Application.ScreenUpdating = False

If Target.Cells.Column > 2 Then Exit Sub

Cells.Interior.ColorIndex = xlNone

Target.EntireRow.Interior.ColorIndex = 36 '(jaune clair) de colonne A:AB et jusque la dernière ligne non vide

Range("C3").Select

Application.ScreenUpdating = True

End Sub

Private Sub Worksheet_Activate()

Application.ScreenUpdating = True

Dim maPlage As Range

Call EffCouleur

Dligne = Range("A500").End(xlUp).Row

For A = 3 To Dligne Step 2

Rows(A).Interior.ColorIndex = 35 '(vert clair) de colonnes A:AB et jq derniere ligne non vide

Next A

Range("C3").Select

Application.ScreenUpdating = False

End Sub

Module1

Sub EffCouleur()

Application.ScreenUpdating = False

'de A:AB et jq derniere ligne non vide

''' Sheets("Feuil1").Range("A1:AB" & DerLigne).Select

With Selection.Interior

.Pattern = xlNone

End With

Application.ScreenUpdating = True

End Sub

6test-couleur.xlsm (33.38 Ko)

Bonjour Jean Pierre 30, le forum,

Un essai....pas sûr d'avoir tout compris...

Cordialement,

Bonjour xorsankukai

Ce n'est pas bon

Ce que je souhaiterai, c'est que la coloration en vert ou jaune ne dépasse pas la colonne AB jusqu'à la dernière ligne variable

La couleur jaune étant réservée au clic en colonne A ou B et pour la coloration des renseignements de la personne

Ce qui ne m'empêche pas de te remercier pour ton aide

Re,

Nouvel essai....

Cordialement,

Bonjour,

Et un autre, un ...

Cordialement.

14test-couleur.xlsm (29.99 Ko)

Salut Jean-Pierre,

Salut l'équipe,

Dur, dur de s'y remettre après des mois de pause forcée...

On va commencer très petit si vous voulez bien...

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
If Target.Row > 1 And Target.Column < 3 Then
    iRow = Target.Row
    If Range("A" & iRow - 1) = "" And Range("B" & iRow - 1) = "" Then Exit Sub
    Application.ScreenUpdating = False
    If [AC2].Interior.ColorIndex <> 2 Or [AC3].Interior.ColorIndex <> 2 Then Range("AC1").Resize(Rows.Count, Columns.Count - 28).Interior.ColorIndex = 2
    If [AAA1] > 1 Then Range("A" & [AAA1] & ":" & "AB" & [AAA1]).Interior.ColorIndex = IIf([AAA1] Mod 2 = 0, 2, 35)
    Range("A" & iRow & ":" & "AB" & iRow).Interior.ColorIndex = 36
    Union(Range("A1:" & "AB" & iRow), Range("AD1:" & "AD" & iRow), Range("AF1:" & "AF" & iRow)).Borders.LineStyle = 1
    If Range("A" & iRow) <> "" And Range("B" & iRow) <> "" Then Range("C" & iRow).Select
    [AAA1] = iRow
    Application.ScreenUpdating = True
End If
'
End Sub

@Jean-Pierre : pour tester utilement cette macro et AVANT de cliquer en [AB], encoder en [AAA1] le numéro de ligne actuellement en jaune.

Toute autre Sub inutile... si tout va bien!

A+, le forum

Bonsoir à chacun de vous,

Merci de vous êtres penchés sur ma demande.

gyrus, un grand merci particulier car c'est exactement ce que je souhaitais.

J'ai corrigé pour commencer la coloration verte à la ligne 3 Stp

Set MaPlage = Range("A3:AB" & Dligne)

Toutes mes sincères félicitations gyrus, tu as davantage fais que ce que j'attendais, toute ma gratitude aussi

Bonne soirée à vous et bon dimanche.

Bonjour gyrus, curulis57,

Problème variable non définie

Bonjour,

C’est un tantinet succinct comme explication ….

Du langage codé, peut-être ?

Cordialement.

gyrus même problème en gras : erreur de compilation - variable non définie

Set Plage = Application.Intersect(MaPlage, Rows(Target.Row))

xorsankukai même problème en gras : : variable non définie

iRow est surligné en bleu et le message dit erreur de compilation

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'

If Target.Row > 1 And Target.Column < 3 Then

En vous remerciant.

Bonjour le fil,

xorsankukai même problème en gras

iRow est surligné en bleu et le message dit erreur de compilation

Je crois que tu t'adresses à curulis57, non ?

Bonne soirée,

C'est peut-être à cause de Option Explicite en tête.......?

Re,

https://docs.microsoft.com/fr-fr/office/vba/language/reference/user-interface-help/option-explicit-statement

capture

A tester....

Dim plage as range
Dim iRow as long     'où Dim iRow as integer

Cordialement,

As-tu bien déclaré les deux plages ?

Dim MaPlage As Range
Dim Plage As Range

Cordialement.

Bonjour xorsankukai, gyrus,

Non je n'avais pas déclaré car je ne savais pas comment faire.

Je te remercie car c'est OK maintenant

Bonne journée

Rechercher des sujets similaires à "adapter codes"