[VBA] Sélection Colonnes

Maivas

XLDnaute Junior
Bonjour,

Je voudrais contraindre l'utilisateur d'un fichier à sélectioner (Une fois l'inputbox affiché par macro) uniquement des colonnes.
C'est à dire qu'il ne peut que sélectioner $N:$AN et non $N1:$AN21.

Avez-vous une petit idée.

Merci
Code:
Sub SelectionPlageAvecSouris()
        Dim Plage As Range
        On Error Resume Next
        Set Plage = Application.InputBox("Sélectionnez la plage de reprévision (27 Colonnes)", "Sélection de cellules", Type:=8)
        MsgBox ("La plage que vous avez séléctionnez est : " & Plage.Address)
End Sub
 

jp14

XLDnaute Barbatruc
Re : [VBA] Sélection Colonnes

Bonjour

Une piste

Vérifier si dans Plage.Address on trouve une valeur numérique
Code:
for i = 1 to len(Plage.Address)
if isnumeric(mid(Plage.Address,i,1)) then
  msgbox " erreur "
  exit sub
end if
next i

A tester

JP
 
Dernière édition:

Maivas

XLDnaute Junior
Re : [VBA] Sélection Colonnes

Ouaih...

Je pensais plus à une sélection qui était bloquée uniquement sur les colonnes (C'est à dire quand sélectionnant une cellue A1 cela se transforme automatiquement en A:A et si l'utilisateur sélectionne correctement A:A cela reste A:A) et pas à une vérification du contenu sélectionné.
Le mieux serait une zone de sélection bornée aux colonnes!
Mais si je n'ai pas le choix...

Merci
 

jp14

XLDnaute Barbatruc
Re : [VBA] Sélection Colonnes

Bonjour

Le plus simple est de supprimer les valeurs numériques, en utilisant le même principe.

Code:
If IsNumeric(Mid(Plage.Address, i, 1)) Then
            Else
          Data1 = Data1 & Mid(Plage.Address, i, 1)
        End If
        Next i
       Set Plage1 = Sheets(Plage.Worksheet.Name).Range(Replace(Data1, "$", ""))
       
        MsgBox ("La plage que vous avez séléctionnez est : " & Plage1.Address(0, 0))
et réaffecter la plage en donnant la valeur dans data1.

JP
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 300
Membres
103 173
dernier inscrit
Cerba95