Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

CONCATENER deux cellules dans autre cellules (VBA)

Ilino

XLDnaute Barbatruc
Bonsoir Forum
Dans mon classeur j’ai deux feuilles
Feuil1 : elle s’appelle « FSE » constituée d’un tableau de 13 colonnes
Feuil2 : elle s’appelle « Bordereau d’envoi » c’est une feuille modèle elle est constituée d’un tableau de 7 colonnes
La feuille 2 est alimentée par La feuille 1
Selon le code suivant
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A7")) Is Nothing Then
If Target = "" Then Target = "Saisir le N° de BE ICI !!!"
End If
If Not Intersect(Target, Range("I2")) Is Nothing Then
If Target = "" Then Target = "Saisir le chemin du répertoire"
End If

If Intersect(Target, [A7]) Is Nothing Then Exit Sub
Dim num$, source, n&, dest(), i&
Dim somme As Variant 'Dim somme As Long 'Dim somme As Integer
Range("A11:G" & Rows.Count).ClearContents 'RAZ
TextBox1 = ""
If [A7].Text = "Saisir le N° de BE ICI !!!" Then Exit Sub
If Not [A7] Like "*KDT/SCO*" Then _
  [A7] = [A7].Text & " /KDT/SCO/ " & Year(Date): Exit Sub
num = [A7].Text
With Sheets("FSE")
  Set source = .Range("A3:M" & .Cells(.Rows.Count, 10).End(xlUp).Row)
End With
n = Application.CountIf(source.Columns(10), num)
TextBox1 = TextBox1.Text & "Nombre des Factures : " & n
If n = 0 Then Exit Sub
source = source 'matrice, plus rapide
ReDim dest(1 To n, 1 To 7)
n = 0
somme = 0
For i = 1 To UBound(source)
  If source(i, 10) = num Then
    n = n + 1
    dest(n, 1) = source(i, 2)
    dest(n, 2) = source(i, 7)
    dest(n, 3) = source(i, 3)
    dest(n, 4) = source(i, 4)
    dest(n, 5) = source(i, 9)
    dest(n, 6) = source(i, 5)
    somme = somme + dest(n, 6)
    dest(n, 7) = source(i, 13)
  End If
Next
[A11:G11].Resize(n) = dest
Cells(n + 11, 6) = somme
Cells(n + 11, 5) = "Total"
End Sub
Et tous va bien le seule souci est au niveau de ce code
Code:
For i = 1 To UBound(source)
  If source(i, 10) = num Then
    n = n + 1
    dest(n, 1) = source(i, 2)
    dest(n, 2) = source(i, 7) ‘ mon souci est a ce niveau
    dest(n, 3) = source(i, 3)
    dest(n, 4) = source(i, 4)
    dest(n, 5) = source(i, 9)
    dest(n, 6) = source(i, 5)
    somme = somme + dest(n, 6)
    dest(n, 7) = source(i, 13)
  End If
Comment faire pour concaténer la donnée de la colonne 6 avec la donnée de la colonne 7 de la feuille 1 (source) dans la colonne 2 de la feuille 2 (dest) ??
Merci par avance
 

Ilino

XLDnaute Barbatruc
Re : CONCATENER deux cellules dans autre cellules (VBA)

Bonsoir Bruno
Tellement très simple je n’ai pas pensé à ça ???
Merci quand même AMICO BRUNO
Si tu permets une autre question
Comment faire sortir le nombre de page de la feuille 2 Si le tableau de la feuille 2 a dépassé la zone d’impression
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…