Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 10.03.2008, 22:45   #1
Ice_Juice
Пользователь
 
Регистрация: 19.02.2008
Сообщений: 22
По умолчанию Много таблиц, выборочное удаение строк

На одном листе есть 200 таблиц ( Во всех таблицах одинаковое количество столбцов и называются они одинаково, только вот количество строк разное.
1-ый столбец артику
7-ой название,
2,3,4,5,6 - смысловой нагрузки не несут.

2а вопроса:
1. Как удалить 2,3,4,5,6 - столбцы сразу во всех таблицах (соответственно нумерации название совпадает)
2. И как удалить строки, если нужно оставить только артикул одного типа
Заранее благодарен
Ice_Juice вне форума
Старый 11.03.2008, 09:05   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

По 1 вопросу:
Пусть заголовки всех таблиц расположены в строке 1 и количество столбцов в каждой таблице - 7. Предлагаемый макрос удалит столбцы со 2 по 6 включительно в каждой таблице (количество столбцов между таблицами не критично).
Код:
Sub DeleteColumns()

    Dim MyCol As String, x As Range, y As Range, FstAddr As String
    
    If IsEmpty(Range("A1")) Then _
        MyCol = Cells(1, Range("A1").End(xlToRight).Column + 1) Else MyCol = Cells(1, Range("A1").Column + 1)
    Set x = Rows(1).Find(What:=MyCol, LookAt:=xlWhole)
    If x Is Nothing Then Exit Sub
    Set y = Range(Columns(x.Column), Columns(x.Column + 4))
    FstAddr = x.Address
    Do
        Set y = Union(y, Range(Columns(x.Column), Columns(x.Column + 4)))
        Set x = Rows(1).FindNext(x)
    Loop While FstAddr <> x.Address
    
    y.Delete
        
End Sub
По 2 вопросу:
Если не устраивает обычный автофильтр, то у Вас не оговаривается, каким образом получить
Цитата:
только артикул одного типа
Кто и куда его должен ввести? И для всех таблиц он один и тот же, или разные?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Много объектов. Манжосов Денис :) Общие вопросы Delphi 5 04.09.2008 22:34
Много переменных Altera Общие вопросы Delphi 15 18.07.2008 08:06
Сгенерировать много GIF Dj_smart Мультимедиа в Delphi 3 20.05.2008 21:38
Excel max 256 строк VS user надо 300 строк Exo Microsoft Office Excel 3 10.01.2008 17:14
много регистров nntpaha Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 22.12.2007 19:01