2017-10-21 41 views
0

Je souhaite copier certaines plages dans la feuille de travail Helper.Comment désactiver la fonctionnalité d'extension automatique de la table?

En effet, je veux reformater ces plages copiées et les définir en Format as Table.

Chaque plage contient un Titre voulu être non Table format.

J'ai essayé le code ci-dessous:

ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(UpLeft,1).Address ":" & Cells(DownRight, 20).Address), , xlYes).Name = "Table" & i 

Tout est bon quand je joue la première plage de copier, mais quand je fais copier les plages suivant, précédent « Table format` ont automatiquement décompressés et titres et en-têtes déranger du gamme actuelle.

j'avais mis fin de chaque taille de plage copiée à l'ensemble de la zone d'impression Hauteur à l'aide

(IIf(WS.PageSetup.Orientation = xlLandscape, 591, 852) - WS.PageSetup.TopMargin - WS.PageSetup.BottomMargin) * _ (100/WS.PageSetup.Zoom) - 1 

Et ajoutez fin de chaque plage copiée d'un frein de page avec

WS.HPageBreaks.Add Before:=Rows(sh + 1). 

Et je besoin de chaque gamme ont commencer à partir du haut de la page, donc je ne peux pas laisser d'espace entre les pastilles

Comment puis-je empêcher le développement automatique de Table dans une feuille de travail spécifique?

+0

Êtes-vous en laissant des espaces suffisants entre les empâtements? Et chaque pâte est-elle un nouvel objet? – QHarr

+0

Non. J'avais défini la fin de chaque taille de plage copiée sur la totalité de la zone d'impression 'Height' en utilisant' (IIf (WS.PageSetup.Orientation = xlLandscape, 591, 852) - WS.PageSetup.TopMargin - WS.PageSetup.BottomMargin) * _ (100/WS.PageSetup.Zoom) - 1' et ajouter une fin de chaque plage copiée un frein de page ('WS.HPageBreaks.Add avant: = lignes (sh + 1)'). Et j'ai besoin que chaque gamme commence à partir du haut de la page, donc je ne peux pas laisser de trous entre les passages. – mgae2m

Répondre

1

Turn off autoexpand:

Application.AutoCorrect.AutoExpandListRange = False