Double Comparaison colonne Suite 2

Résolu/Fermé
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 - 17 nov. 2015 à 08:57
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 - 19 nov. 2015 à 09:24
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 :

.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
A voir également:

3 réponses

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
17 nov. 2015 à 10:10
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
1
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
17 nov. 2015 à 16:01
Bonjour f894009,

Merci pour ta réponse.

En effet T_Out_Extract à bien une limite. Dans mon cas, elle est à 196
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016
17 nov. 2015 à 19:00
Re,

Desole, mais y deux limites:

UBound(T_Out_Extract, 2), UBound(T_Out_Extract, 1)
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5 > f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024
18 nov. 2015 à 08:47
J'ai bien une limite pour les deux

UBound(T_Out_Extract, 2) = 196
UBound(T_Out_Extract, 1) = 16
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016
18 nov. 2015 à 10:45
Bonjour,

Il faudrait votre fichier, car je ne peux pas vraiment faire de simulation
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
18 nov. 2015 à 11:25
Voici un exemple de mon fichier
Il y a seulement les colonnes B, K, L, M
Moi je veux juste faire une comparaison avec les colonnes B et M
http://www.cjoint.com/c/EKskya4ZhFF

Merci encore pour ton aide

TintinU2
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
19 nov. 2015 à 07:11
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
1
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
19 nov. 2015 à 09:19
Bonjour f894009,

Je te remercie énormément :)

Pour bien comprendre ce que tu as fais, tu as rajouter une boucle afin d'éviter
Application.Transpose
qui lui ne prends en compte que 255 caractères max par cellules.
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016
Modifié par f894009 le 19/11/2015 à 09:24
Re,

Oui, car certaines instructions n'ont pas évolué avec Office2007 et plus. Ca ne vient pas forcément a l'idée de suite
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5 > f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024
19 nov. 2015 à 09:24
D'accord.

Merci beaucoup ton aide.

Bon courage et bonne journée
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
18 nov. 2015 à 11:37
Re,

Ben, y a pas d'erreur !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
Modifié par TintinU2 le 18/11/2015 à 14:25
En effet je n'ai pas de problème non plus.

Je teste ligne par ligne et je viens de me rendre compte que c'est la colonne H qui pose problème. Il n'y a que du texte dans cette colonne.
Je ne comprend pas pourquoi vu que la colonne H ne fait pas partie du code.
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
18 nov. 2015 à 15:12
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
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5
18 nov. 2015 à 15:31
Ou bien, je pense plus pour ce deuxième problème

Est-ce que le nombre de caractère est limité ?
Mon plus long texte dans la colonne H fait 1028 caractères (espaces compris)
Si c'est le cas, je suppose qu'il y a une limite de caractère
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709 > TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016
18 nov. 2015 à 15:38
Re,

Vu que je n"ai pas vos donnees, pas facile de comprendre. De plus dans le code de votre precedent post, vous avez ceci
Sheets("Feuil1").Select
et dans votre fichier il n'y a pas de "feuil1" !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0
TintinU2 Messages postés 79 Date d'inscription lundi 26 octobre 2015 Statut Membre Dernière intervention 8 juillet 2016 5 > f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024
18 nov. 2015 à 16:29
Merci 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
0