Ecrire le contenu de 2 cellules dans un msgbox

naitsirhc

XLDnaute Junior
Bonjour,
Avec la fonction Offset en vba (cellule A3 active)j'écris dans le mgsbox le contenu d'une cellule (A2), comment afficher le contenu de deux cellules dans le mgsbox (A2 eA1).
Comment maintenir A2 et A1 si je me déplace sur la même ligne, cellule A4,....actiive.
J'ai créé un petit fichier en annexe
Merci pour la réponse et bravo au forum
Naitsirhc
 

Pièces jointes

  • nom et prénom dans le msgbox.xls
    27 KB · Affichages: 173

Pierrot93

XLDnaute Barbatruc
Re : Ecrire le contenu de 2 cellules dans un msgbox

Bonjour Christian

Essaie le code ci dessous

Code:
t = Application.InputBox(CStr(ActiveCell.Offset(0, -1)) & " " & CStr(ActiveCell.Offset(0, -2)) _
& " souhaite emprunter le livre:", "REFERENCE DU LIVRE", , 420, 320, Type:=1)
If Not t = 0 Then Selection = t

Bon week end
@+
 

naitsirhc

XLDnaute Junior
Re : Ecrire le contenu de 2 cellules dans un msgbox

Merci Pierrot,
Cela fonctionne bien pour la cellule définie mais pas pour une autre cellule de la même ligne (cause de offset -1...-2)
Cela est expliqué dans le fichier joint de mon premier message.
Merci encore Naitsirhc
 

ziopizza

XLDnaute Occasionnel
Re : Ecrire le contenu de 2 cellules dans un msgbox

Bonjour le fil,
peut etre comme ça,fichier joint
salut
Yves
Ps:Ce code fonctionne quelque soi la cellule active
 

Pièces jointes

  • ecrire-le-contenu-de-2-cellules-dans-un-msgbox-nom-et-prenom-dans-le-msgbox.xls
    25.5 KB · Affichages: 160
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Ecrire le contenu de 2 cellules dans un msgbox

Re Christian

Ok, j ai modifié un peu le code. A tester si cela te conviens

Code:
Sub Introduire_code_new()
Dim t As Double

If ActiveCell.Column = 3 Then

t = Application.InputBox(CStr(ActiveCell.Offset(0, -1)) & " " & CStr(ActiveCell.Offset(0, -2)) _
& " souhaite emprunter le livre:", "REFERENCE DU LIVRE", , 420, 320, Type:=1)
    ElseIf ActiveCell.Column = 5 Then
        t = Application.InputBox(CStr(ActiveCell.Offset(0, -3)) & " " & CStr(ActiveCell.Offset(0, -4)) _
        & " souhaite emprunter le livre:", "REFERENCE DU LIVRE", , 420, 320, Type:=1)
Else
End If
    
If Not t = 0 Then Selection = t

End Sub

@+
 

naitsirhc

XLDnaute Junior
Re : Ecrire le contenu de 2 cellules dans un msgbox

Yves et Pierrot,
Tous les deux merci, cela fonctionne avec un petit problème mais solutionné avec fichier de Pierrot:
Avec la souris, en activant une cellule on peut par accident intitialiser 2,3...cellules si on se déplace dans la col tout en maintennant le click gauche enfoncé: dans ce cas la référence du livre s'incrit dans 2,3,...cellules (ce qui n'est pas correct)
Dans la macro de Pierrot: ajout de t = ActiveCell.Select et tout s'arrange (le code s'inscrit que dans la première cellule initialisé et non pas ailleurs)
Je n'ai pas essayé dans la macro de Yves.

Une autre question: peut-on modifier l'apparence d'un msgbox (dimensions fenêtre, taille caractères, couleur....) mais je vais ouvrir une nouvelle discussion.
Merci encore et bravo
Christian
 

freddv

XLDnaute Nouveau
Re : Ecrire le contenu de 2 cellules dans un msgbox

bonjour,
j'essai même si le message date un peu...
comment utiliser ce code :
Code:
Sub Introduire_code_new()
Dim t As Double

If ActiveCell.Column = 3 Then

t = Application.InputBox(CStr(ActiveCell.Offset(0, -1)) & " " & CStr(ActiveCell.Offset(0, -2)) _
& " souhaite emprunter le livre:", "REFERENCE DU LIVRE", , 420, 320, Type:=1)
ElseIf ActiveCell.Column = 5 Then
t = Application.InputBox(CStr(ActiveCell.Offset(0, -3)) & " " & CStr(ActiveCell.Offset(0, -4)) _
& " souhaite emprunter le livre:", "REFERENCE DU LIVRE", , 420, 320, Type:=1)
Else
End If

If Not t = 0 Then Selection = t

End Sub

la seul difference c'est que je puisse inscrire du texte dans le messagebox?
merci pour votre aide.
 

Discussions similaires

Statistiques des forums

Discussions
312 400
Messages
2 088 093
Membres
103 721
dernier inscrit
m.fritih