email avec pièce jointe dans userform (Résolu)

fredoud

XLDnaute Junior
Bonjour,

Comment-faire pour envoyer des emails d'une liste (colonne M par exemple) et de pouvoir ajouter une pièce jointe tout ça dans userform. J'ai commencé mais fonctionne pas.

Pouvez-vous m'aider ,

Cordialement

Frederique
 

Pièces jointes

  • Fichier Clients-v1.xls
    140 KB · Affichages: 303
  • Fichier Clients-v1.xls
    140 KB · Affichages: 318
  • Fichier Clients-v1.xls
    140 KB · Affichages: 313
Dernière édition:

JNP

XLDnaute Barbatruc
Re : email avec pièce jointe dans userform

Re :),
Tu ne m'importunes pas, mais ton dernier post m'a permis de retrouver mon âge normal, merci ;) !
Effectivement, tu as loupé un épisode :rolleyes:
J'ai juste récupéré ta feuille Base et ton USF que j'ai modifiés (entre autre, j'ai supprimé toutes les zones nommées qui servaient à rien pour utiliser un tableau 2007 qui est bien plus pratique :p...).
Tu avais plein de colonnes déclarées avec le gestionnaire de nom avec Decaler et Nbval, à la place, j'ai juste sélectionné ton tableau et ai cliqué sur "Mettre sous forme de tableau" dans l'onglet "Accueil". Du coup, il ne déclare qu'une zone nommée (Tableau1) auquel tu as le droit de faire référence colonne par colonne en utilisant l'entête (). De plus, chaque ligne ajoutée sera cumulée à ton tableau et la zone redimensionnée. Je te conseille de lire l'aide concernant les tableaux (l'aide Excel, pas l'aide VBA :rolleyes:), tu verras combien cette notion peux être pratique :p...
Bises et bon courage :cool:
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Bonsoir JNP

Ca fais plusieurs fois environ que je tente de modifier le fichier du post 7 avec ce que tu m'as indiqué dans les posts 9,11,14 et je me retrouve tout le temps avec une erreur, je site
- à l'ouverture "excel a rencontré un contenu illisible ... répondre oui ou non je fais oui
- ensuite "fonction supprimée Référence de formule externe dans la partie /xl/externalLinks.externalLink1.xml (valeurs mises en cache à partir d'une référence de formule externe)
- erreur d'exécution' 13' incompatibilité de type ceci depuis modification lié à BCC
- fais planté excel de temps en temps, je rage

Ce fichier me pose vraiment problème ! Je dois faire des recherche concernant Tableau car c'est une fonction que je ne connaissais pas, du boulot en plus en perspective, qui a dit que l'informatique était facile, pas moi.

Merci de m'apporter secours JNP

Frederique
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Bonjour JNP,

Ca ne te dérange pas de me retourner le fichier post 7 avec les modifications des postes suivant, je dois faire une erreur quelque part c'est pas possible autrement

En te remerciant,

Frederique
 

JNP

XLDnaute Barbatruc
Re : email avec pièce jointe dans userform

Re :),
Oui, une petite erreur s'était glissée :eek:...
Vu comme ceci, ça devrait le faire :p...
Bises :cool:
 

Pièces jointes

  • Envoyer mail(2007).xlsm
    29.7 KB · Affichages: 120
  • Envoyer mail(2007).xlsm
    29.7 KB · Affichages: 103
  • Envoyer mail(2007).xlsm
    29.7 KB · Affichages: 107

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Bonsoir JNP,

Désolée, j'ai tardé pour répondre et te remercié. Avec le nouveau fichier que tu as uploade,ça fonctionne donc je partie de celui-ci pour faire ce que je voulais. Presque tout fonctionne par rapport à avant, et oui il y a un hic:

Dans mon précèdent fichier, je pouvais faire un double clic dans la base et cela ouvrait l'userform "AjouterClient" afin de pouvoir modifier le clients et de plus ça souligner la ligne. Maintenant ça ne fonctionne plus voici le code que je mettais dans la feuille base

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 
If Range("A" & Target.Row) <> "" And Target.Row > 1 Then
    Cancel = True
    LaLig = Target.Row
    With Range("A" & LaLig & ":N" & LaLig)
        .Borders.LineStyle = xlContinuous
        .Borders.Color = -16776961
        .Borders.Weight = xlMedium
        .Borders(xlInsideVertical).LineStyle = xlNone
    End With
    AjouterClient.Show
End If
End Sub
et celui-ci dans l'userform "AjouterClient"
Code:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If LaLig > 0 Then
    Sheets("Base").Range("A" & LaLig & ":N" & LaLig).Borders.LineStyle = xlNone
LaLig = 0
End If
End Sub
et
Code:
Private Sub UserForm_Initialize()
With Sheets("Base")
    If LaLig = 0 Then
        Me.CmdValider.Caption = "Ajouter"
        LaLig = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
        Me.TextBox_numero = Val(.Range("A" & LaLig - 1)) + 1
    Else
        Me.CmdValider.Caption = "Modifier"
        Me.TextBox_numero = .Range("A" & LaLig)
        Me.ComboBox_civilite = .Range("B" & LaLig)
        Me.ComboBox_nom = .Range("C" & LaLig)
        Me.TextBox_prenom = .Range("D" & LaLig)
        Me.TextBox_adresse = .Range("E" & LaLig)
        Me.TextBox_adresse2 = .Range("F" & LaLig)
        Me.TextBox_CP = .Range("G" & LaLig)
        Me.ComboBox_ville = .Range("H" & LaLig)
        Me.TextBox_dept = .Range("I" & LaLig)
        Me.TextBox_tel = .Range("J" & LaLig)
        Me.TextBox_tel2 = .Range("K" & LaLig)
        Me.TextBox_portable = .Range("L" & LaLig)
        Me.TextBox_email = .Range("M" & LaLig)
        Me.ComboBox_categorie = .Range("N" & LaLig)
        Me.ComboBox_statut = .Range("O" & LaLig)
        Me.TextBox_note = .Range("P" & LaLig)
    End If
End With
End Sub
en partie pour lui indiquer ce meme userform est en mode ajout ou modification

D'ou vient le problème, l'erreur s'affiche dans le code de la feuille "Base" ?

En te remerciant, bonne nuit

Frederique
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Bonjour JNP et au forum,

Je renvoie le fichier avec des données fictives. Concernant mon problème précédent, je pense que c'est du au Tableau1 (mise en forme sous tableu de la feuille "Base") différence par rapport au premier fichier posté. Je rencontre aussi un probleme avec le bouton "Menu" de la feuille base il ne veut pas afficher le menu.

Bon courage, j'espère que j'ai bien fait et qu'il n'y a pas trop d'erreur de syntaxe. Il faut me pardonner, j'ai commencé depuis 3 semaines a ecrire en vba.

Merci pour le coup de main JNP et bonne journée

Frederique
 

Pièces jointes

  • Fichier Clients.xlsm
    149.9 KB · Affichages: 52
  • Fichier Clients.xlsm
    149.9 KB · Affichages: 52
  • Fichier Clients.xlsm
    149.9 KB · Affichages: 53

JNP

XLDnaute Barbatruc
Re : email avec pièce jointe dans userform

Re :),
Là, je suis désolé, mais je ne peux pas tester ton fichier, il est bourré d'API 32 bits qui ne fonctionnent pas en 64 bits :eek:...
J'essayerai de le tester plus tard, mais comme la seule version 2007 32 bits dont je dispose est au boulot, tu comprendras que je ne pourrai qu'y jeter un coup d'oeil (comme lorsque je t'ai réenregistré le fichier avec les références 2007 :rolleyes:).
Je vais demander à un ami du forum d'y jeter un oeil, mais sans garantie :p...
Bon courage :cool:
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Re bonjour JNP

Je te retourne le fichier sans les API 32 et merci de t'occuper de mon cas en ce jour

Bon appetit

Frederique
 

Pièces jointes

  • Fichier Clients.xlsm
    137 KB · Affichages: 50
  • Fichier Clients.xlsm
    137 KB · Affichages: 55
  • Fichier Clients.xlsm
    137 KB · Affichages: 76

JNP

XLDnaute Barbatruc
Re : email avec pièce jointe dans userform

Re :),
les API, c'est ça
Code:
Public Declare Function FindWindowA Lib "user32" _
                                    (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function GetWindowRect Lib "user32" _
                                      (ByVal hwnd As Long, lpRect As RECT) As Long
Public Declare Function GetWindowLong Lib "user32" Alias _
                                      "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias _
                                      "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, _
                                                        ByVal dwNewLong As Long) As Long
Public Declare Function SetWindowPos Lib "user32" _
                                     (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, _
                                      ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, _
                                      ByVal wFlags As Long) As Long
Tu vois que c'est tout du 32...
A + :cool:
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

re bonjour,

Désolée, j'avais oublie ceux-là. J'ai rectifié en espérant que c'est bon cette fois ci

Merci

Frederique
 

Pièces jointes

  • Fichier Clients.xlsm
    133 KB · Affichages: 57
  • Fichier Clients.xlsm
    133 KB · Affichages: 58
  • Fichier Clients.xlsm
    133 KB · Affichages: 56

JNP

XLDnaute Barbatruc
Re : email avec pièce jointe dans userform

Re :),
Si tu essaie de faire cohabiter un USF et une Sub du même nom, ça ne peux pas fonctionner :rolleyes:...
En renommant ta Sub LancerMenu et en modifiant le bouton, chez moi, ça marche :p...
Pour le double-clic sur la feuille base, tu avait ôté beaucoup de choses :rolleyes:...
En modifiant comme suit, ça marche chez moi
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 
If Range("A" & Target.Row) <> "" And Target.Row > 1 Then
    Cancel = True
    LaLig = Target.Row
    With Range("A" & LaLig & ":P" & LaLig)
        .Borders.LineStyle = xlContinuous
        .Borders.Color = -16776961
    End With
End If
AjouterClient.Show
End Sub
Y a-t'il autre chose ;) ?
A + :cool:
 

fredoud

XLDnaute Junior
Re : email avec pièce jointe dans userform

Bonsoir,

Franchement, je suis etourdie ! Merci JNP, ça fonctionne. Quand je lance le fichier l'userform menu s'ouvre, c'est normal mais ce que je voudrais faire c'est que la dernière ligne de la base soit afficher, est-ce possible ?

Bonne soirée

Frederique
 

Discussions similaires

  • Question
Microsoft 365 Listbox
Réponses
3
Affichages
278

Statistiques des forums

Discussions
312 576
Messages
2 089 864
Membres
104 294
dernier inscrit
BByd