Macro Excel - transferer les données
Dernière réponse : dans Programmation
Bonjour, jai un petit soucis avec ma macro excel qui permet de transferer des données (transposé). En faite j'ai un onglet avec un tableau ou je rentre mes données, et une macro avec un bouton ki permet de transferer les données vers mon onglet principal ... le seul soucis c'est que si mon tableau n'est pas plein, il transfere quand meme les cellules vides. Comment faire pour qu'il ne transfere seulement la ligne que si il y a au moins une cellule de la ligne avec des données. Si toutes les cellulles de la ligne sont vides, je veux qu'il ne la transfere pas. voici ma macro : Sub tranpose_dans_tableau() Dim ligne_active_base As Double 'Test pour déterminer la ligne où coller les infos dans le tableau' Sheets("Planning").Activate 'Mémorise le n° de la ligne où coller les données' If Range("A2").Value = "" Then ligne_active_base = Range("A2").Row Else ligne_active_base = Range("A2").End(xlDown).Row 1 End If 'Atteindre le formulaire et mémoriser les données' Sheets("Formulaire").Ra
Autres pages sur : macro excel transferer donnees
Lassé par la pub ? Créez un compte
Bonjour, jai un petit soucis avec ma macro excel qui permet de transferer des données (transposé). En faite j'ai un onglet avec un tableau ou je rentre mes données, et une macro avec un bouton ki permet de transferer les données vers mon onglet principal ... le seul soucis c'est que si mon tableau n'est pas plein, il transfere quand meme les cellules vides. Comment faire pour qu'il ne transfere seulement la ligne que si il y a au moins une cellule de la ligne avec des données. Si toutes les cellulles de la ligne sont vides, je veux qu'il ne la transfere pas. voici ma macro : Sub tranpose_dans_tableau() Dim ligne_active_base As Double 'Test pour déterminer la ligne où coller les infos dans le tableau' Sheets("Planning").Activate 'Mémorise le n° de la ligne où coller les données' If Range("A2").Value = "" Then ligne_active_base = Range("A2").Row Else ligne_active_base = Range("A2").End(xlDown).Row 1 End If 'Atteindre le formulaire et mémoriser les données' Sheets("Formulaire").Range("B1:H23").Copy Range("A" & ligne_active_base).PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, SkipBlanks:=False, Transpose:=True 'Collage avec transposition' Application.CutCopyMode = False 'Rendre le formulaire vierge' Sheets("Formulaire").Activate Sheets("Formulaire").Range("B1:H23").ClearContents Sheets("Formulaire").Range("B1").Select 'Retourner sur la base de données' Sheets("Planning").Activate End Sub si quelqu'un le sait, ca m'arrangerait beaucoup.... Cordialement,
Bonjour, jai un petit soucis avec ma macro excel qui permet de transferer des données (transposé). En faite j'ai un onglet avec un tableau ou je rentre mes données, et une macro avec un bouton ki permet de transferer les données vers mon onglet principal ... le seul soucis c'est que si mon tableau n'est pas plein, il transfere quand meme les cellules vides. Comment faire pour qu'il ne transfere seulement la ligne que si il y a au moins une cellule de la ligne avec des données. Si toutes les cellulles de la ligne sont vides, je veux qu'il ne la transfere pas. voici ma macro : Sub tranpose_dans_tableau() Dim ligne_active_base As Double 'Test pour déterminer la ligne où coller les infos dans le tableau' Sheets("Planning").Activate 'Mémorise le n° de la ligne où coller les données' If Range("A2").Value = "" Then ligne_active_base = Range("A2").Row Else ligne_active_base = Range("A2").End(xlDown).Row 1 End If 'Atteindre le formulaire et mémoriser les données' Sheets("Formulaire").Range("B1:H23").Copy Range("A" & ligne_active_base).PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, SkipBlanks:=False, Transpose:=True 'Collage avec transposition' Application.CutCopyMode = False 'Rendre le formulaire vierge' Sheets("Formulaire").Activate Sheets("Formulaire").Range("B1:H23").ClearContents Sheets("Formulaire").Range("B1").Select 'Retourner sur la base de données' Sheets("Planning").Activate End Sub si quelqu'un le sait, ca m'arrangerait beaucoup.... Cordialement,
Salut,
Dis, ça t'amuse de poster trois fois la même chose ? Et trois fois tout d'un bloc, sans le moindre effort de présentation !
Va lire le règlement et présente nous ça un peu mieux. En l'état, personne ne se donnera la peine de chercher à résoudre ton problème : tu ne trouveras que les modérateurs pour te rembarrer. Ce qui est bien dommage.
Dis, ça t'amuse de poster trois fois la même chose ? Et trois fois tout d'un bloc, sans le moindre effort de présentation !
Va lire le règlement et présente nous ça un peu mieux. En l'état, personne ne se donnera la peine de chercher à résoudre ton problème : tu ne trouveras que les modérateurs pour te rembarrer. Ce qui est bien dommage.
Bonjour,
jai un petit soucis avec ma macro excel qui permet de transferer des données (transposé).
En faite j'ai un onglet avec un tableau ou je rentre mes données, et une macro avec un bouton ki permet de transferer les données vers mon onglet principal ... le seul soucis c'est que si mon tableau n'est pas plein, il transfere quand meme les cellules vides. Comment faire pour qu'il ne transfere seulement la ligne que si il y a au moins une cellule de la ligne avec des données. Si toutes les cellulles de la ligne sont vides, je veux qu'il ne la transfere pas. voici ma macro :
Sub tranpose_dans_tableau()
Dim ligne_active_base As Double
'Test pour déterminer la ligne où coller les infos dans le tableau'
Sheets("Planning" ).Activate
'Mémorise le n° de la ligne où coller les données'
If Range("A2" ).Value = "" Then
ligne_active_base = Range("A2" ).Row
Else ligne_active_base = Range("A2" ).End(xlDown).Row 1
End If
'Atteindre le formulaire et mémoriser les données'
Sheets("Formulaire" ).Range("B1:H23" ).Copy Range("A" & ligne_active_base).PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
'Collage avec transposition'
Application.CutCopyMode = False
'Rendre le formulaire vierge'
Sheets("Formulaire" ).Activate
Sheets("Formulaire" ).Range("B1:H23" ).ClearContents
Sheets("Formulaire" ).Range("B1" ).Select
'Retourner sur la base de données'
Sheets("Planning" ).Activate
End Sub
si quelqu'un le sait, ca m'arrangerait beaucoup.... Cordialement,
jai un petit soucis avec ma macro excel qui permet de transferer des données (transposé).
En faite j'ai un onglet avec un tableau ou je rentre mes données, et une macro avec un bouton ki permet de transferer les données vers mon onglet principal ... le seul soucis c'est que si mon tableau n'est pas plein, il transfere quand meme les cellules vides. Comment faire pour qu'il ne transfere seulement la ligne que si il y a au moins une cellule de la ligne avec des données. Si toutes les cellulles de la ligne sont vides, je veux qu'il ne la transfere pas. voici ma macro :
Sub tranpose_dans_tableau()
Dim ligne_active_base As Double
'Test pour déterminer la ligne où coller les infos dans le tableau'
Sheets("Planning" ).Activate
'Mémorise le n° de la ligne où coller les données'
If Range("A2" ).Value = "" Then
ligne_active_base = Range("A2" ).Row
Else ligne_active_base = Range("A2" ).End(xlDown).Row 1
End If
'Atteindre le formulaire et mémoriser les données'
Sheets("Formulaire" ).Range("B1:H23" ).Copy Range("A" & ligne_active_base).PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
'Collage avec transposition'
Application.CutCopyMode = False
'Rendre le formulaire vierge'
Sheets("Formulaire" ).Activate
Sheets("Formulaire" ).Range("B1:H23" ).ClearContents
Sheets("Formulaire" ).Range("B1" ).Select
'Retourner sur la base de données'
Sheets("Planning" ).Activate
End Sub
si quelqu'un le sait, ca m'arrangerait beaucoup.... Cordialement,
Je t'ai demandé de lire le règlement. Tu fais ce que tu veux, Internet est un monde virtuel libre. Mais tu n'auras pas d'aide si tu ne nous respectes pas. Ce respect passe par l'observation de certaines règles, dont quelques-unes forment le règlement.
Lassé par la pub ? Créez un compte
- Contenus similaires :