LibreOffice Calc LibreOffice cal probleme pour effacer colonne

  • Initiateur de la discussion Initiateur de la discussion NicolasKH
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

NicolasKH

XLDnaute Junior
Bonjour, les champions
j'ai un problemem dans ma macro dans libre office cal, quand je clique sur la macro tous semble bien sauf que la collone B3:C32 ce s'efface pas a savoir que dans la collone D3
icon_biggrin.gif
32 il y a une formule.

Merci de votre aide

voici le code

Sub CopierEtEffacerSiConfirmation()

Dim oFeuille As Object
Dim i As Integer
Dim valeurRecherchee As String
Dim celluleAC As Object
Dim valeurD34 As Variant
Dim valeurE34 As Variant
Dim reponse As Integer

' Feuille "depots"
oFeuille = ThisComponent.Sheets.getByName("depots")

' Confirmation de l'utilisateur
reponse = MsgBox("Confirmer la copie des données et l'effacement de B3:E32 ?", 36, "Confirmation")
If reponse <> 6 Then ' 6 = bouton Oui
MsgBox "Opération annulée.", 64, "Annulé"
Exit Sub
End If

' Valeur recherchée (nettoyée)
valeurRecherchee = Trim(UCase(oFeuille.getCellRangeByName("B34").String))
valeurD34 = oFeuille.getCellRangeByName("D34").Value
valeurE34 = oFeuille.getCellRangeByName("E34").Value

' Recherche dans AC4:AC15
For i = 3 To 14
celluleAC = oFeuille.getCellByPosition(28, i)
If Trim(UCase(celluleAC.String)) = valeurRecherchee Then
' Copie des données dans AD et AE
oFeuille.getCellByPosition(29, i).Value = valeurD34
oFeuille.getCellByPosition(30, i).Value = valeurE34

' Efface les valeurs uniquement dans B3:E32
With oFeuille.getCellRangeByName("B3:E32")
.clearContents(1) ' 1 = efface uniquement les valeurs
End With

MsgBox "Valeurs copiées et saisie effacée.", 64, "Succès"
Exit Sub
End If
Next i

MsgBox "Aucune correspondance trouvée dans la colonne AC4:AC15.", 48, "Recherche"

End Sub
 
Bonjour le fil,

@NicolasKH
Juste pour infos utilises les balises [CODE=vb] ton code VBA [/CODE] pour rendre ton message plus lisible
VB:
Sub CopierEtEffacerSiConfirmation()

Dim oFeuille As Object
Dim i As Integer
Dim valeurRecherchee As String
Dim celluleAC As Object
Dim valeurD34 As Variant
Dim valeurE34 As Variant
Dim reponse As Integer

' Feuille "depots"
oFeuille = ThisComponent.Sheets.getByName("depots")

' Confirmation de l'utilisateur
reponse = MsgBox("Confirmer la copie des données et l'effacement de B3:E32 ?", 36, "Confirmation")
If reponse <> 6 Then ' 6 = bouton Oui
MsgBox "Opération annulée.", 64, "Annulé"
Exit Sub
End If

' Valeur recherchée (nettoyée)
valeurRecherchee = Trim(UCase(oFeuille.getCellRangeByName("B34").String))
valeurD34 = oFeuille.getCellRangeByName("D34").Value
valeurE34 = oFeuille.getCellRangeByName("E34").Value

' Recherche dans AC4:AC15
For i = 3 To 14
celluleAC = oFeuille.getCellByPosition(28, i)
If Trim(UCase(celluleAC.String)) = valeurRecherchee Then
' Copie des données dans AD et AE
oFeuille.getCellByPosition(29, i).Value = valeurD34
oFeuille.getCellByPosition(30, i).Value = valeurE34

' Efface les valeurs uniquement dans B3:E32
With oFeuille.getCellRangeByName("B3:E32")
.clearContents(1) ' 1 = efface uniquement les valeurs
End With

MsgBox "Valeurs copiées et saisie effacée.", 64, "Succès"
Exit Sub
End If
Next i

MsgBox "Aucune correspondance trouvée dans la colonne AC4:AC15.", 48, "Recherche"

End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
400
Retour