Double Comparaison colonne Suite 2
Résolu
Bonjour à tous,
Je viens une fois de plus demander votre aide pour un petit problème.
Revoici mon problème de comparaison avec mes deux lignes
https://forums.commentcamarche.net/forum/affich-32704270-double-comparaison-colonne-suite
J'ai un problème avec ma comparaison de ma première qui ressemble à T150806-8372
Dans le code, VBA me met une erreur sur la ligne suivant :
Provient de :
L'erreur est "Incompatibilité de type", n°13
Est-ce quelqu'un à une petite idée?
Merci d'avance
TintinU2
Je viens une fois de plus demander votre aide pour un petit problème.
Revoici mon problème de comparaison avec mes deux lignes
https://forums.commentcamarche.net/forum/affich-32704270-double-comparaison-colonne-suite
J'ai un problème avec ma comparaison de ma première qui ressemble à T150806-8372
Dans le code, VBA me met une erreur sur la ligne suivant :
.Range("A2").Resize(UBound(T_Out_Extract, 2), UBound(T_Out_Extract, 1)) = Application.Transpose(T_Out_Extract)
Provient de :
'restitution des données en feuilles "extract apres macro" et "bdd apres macro"
With SheetRestiBdd
.Cells.ClearContents
.Range("A1").Resize(, UBound(Entete_Cols_Bdd, 2)) = Entete_Cols_Bdd
.Range("A2").Resize(UBound(T_Out_Bdd, 2), UBound(T_Out_Bdd, 1)) = Application.Transpose(T_Out_Bdd)
End With
With SheetRestiExtr
.Cells.ClearContents
.Range("A1").Resize(, UBound(Entete_Cols_Extr, 2)) = Entete_Cols_Extr
.Range("A2").Resize(UBound(T_Out_Extract, 2), UBound(T_Out_Extract, 1)) = Application.Transpose(T_Out_Extract)
End With
L'erreur est "Incompatibilité de type", n°13
Est-ce quelqu'un à une petite idée?
Merci d'avance
TintinU2
3 réponses
-
Bonjour,
quand vous avez l'erreur, clic sur debugage, passez le curseur souris sur
UBound(T_Out_Extract, 2)
de la ligne
.Range("A2").Resize(UBound(T_Out_Extract, 2), UBound(T_Out_Extract, 1)) = Application.Transpose(T_Out_Extract)
pour voir si votre tableau a bien des limites-
-
-
@f894009J'ai bien une limite pour les deux
UBound(T_Out_Extract, 2) = 196
UBound(T_Out_Extract, 1) = 16 -
-
-
-
Bonjour,
complement d'infos apres tests:Application.Transpose
limites: max lignes 65536 lignes et 255 caracteres par cellules. N'a pas evolue depuis office2003
je remets le fichier car j'avais oublie d'enlever une ligne pour test
https://www.cjoint.com/c/EKtgkvOKNkf-
-
@TintinU2Re,
Oui, car certaines instructions n'ont pas évolué avec Office2007 et plus. Ca ne vient pas forcément a l'idée de suite -
-
-
Re,
Ben, y a pas d'erreur !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-
-
Je précise : Sur cette colonne, j'effectue une suppression de caractère avant un certain mot
C'est-à-dire que je supprime tout le texte qui ce situe avant le mot : "observation"
Voici mon code :Sub Supp_Observation()
Sheets("Feuil1").Select
der_ligne_5 = Range("B1").End(xlDown).Row
'MsgBox der_ligne_5
ActiveSheet.Range("B1:H" & der_ligne_5).AutoFilter Field:=7, Criteria1:="*observation*"
Dim Cel As Range, Plage As Range
Dim Mot As String
Dim der_ligne_6 As Integer, pre_ligne_5 As Integer
der_ligne_6 = Range("B1").End(xlDown).Row
pre_ligne_6 = Range("B1").End(xlUp).Row + 1
Set Plage = Range("H" & pre_ligne_6 & ":H" & der_ligne_6)
Mot = "Observation" 'adapter au mot à rechercher et à supprimer
For Each Cel In Plage
On Error Resume Next
Cel = Mid(Cel, InStr(1, Cel, Mot))
Next Cel
ActiveSheet.Range("G1:H" & der_ligne_5).AutoFilter Field:=7
End Sub
Est-ce que le problème pourrait venir de la?
Encore merci f894009 pour ton aide -
-
@TintinU2Re,
Vu que je n"ai pas vos donnees, pas facile de comprendre. De plus dans le code de votre precedent post, vous avez ceciSheets("Feuil1").Selectet dans votre fichier il n'y a pas de "feuil1" !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -
@f894009Merci pour ta remarque
En effet je n'ai pas de "feuil1"
Je l'ai renommé par la suite, donc cela ne pose pas de problème dans mon programme actuel.
Je te joins un fichier avec mon problème. J'ai mis de "x" à la place des mots que j'ai (c'est un peu confidentielle)
http://www.cjoint.com/c/EKspDjD0NSF
-