Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите добавить условие 
:(
    Опции темы
CatF
  Дата 15.7.2008, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 15.7.2008

Репутация: нет
Всего: нет



Здраствуй.

Помогите пожалуста добавить условие или немного изменить код.

Код

Sub CreateTotal1C()

    Dim Ncol As Integer, x As Worksheet
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    On Error Resume Next
        Sheets("Таблица 1С").Delete
    On Error GoTo 0
    Worksheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = "Таблица 1С"
    Sheets(1).Columns("I").Copy [A1]: Sheets(1).Columns("H").Copy [B1]
    Rows("1:3").Delete
    Columns("A:D").ColumnWidth = 17
    Ncol = 1: Call SumDel(Ncol)
    Ncol = 3: Call SumDel(Ncol)
        
End Sub



Нужно добавить условие: если форма уже существует то её не надо удалять или создовать заново, нужно просто обновить.

Или немного изменить: чтобы программа не создовала или удаляла формы, а работала уже в существующей.

Заранее большое спасибо.
PM MAIL   Вверх
LOPUH
Дата 15.7.2008, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Растение
*


Профиль
Группа: Участник
Сообщений: 245
Регистрация: 15.2.2008
Где: Красноярск

Репутация: 3
Всего: 4



Цитата(CatF @  15.7.2008,  16:53 Найти цитируемый пост)
Нужно добавить условие: если форма уже существует то её не надо удалять или создовать заново, нужно просто обновить.

 Форма-имеется в виду файл? Если так то:
Код

'Функция принимает аргумент(путь и имя файла)и возвращает True  если файл существует
Function F_Exists (path) As Boolean
     Set FileSys = CreateObject("Scripting.FileSystemObject")
      F_Exists  = FileSys.FileExists(path)
End Function     

 Как вариант для поиска файла можно использовать объект Application.FileSearch (см. встроенную справку)
PM MAIL   Вверх
CatF
Дата 15.7.2008, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 15.7.2008

Репутация: нет
Всего: нет



нет форма это не файл, это лист в Excel
PM MAIL   Вверх
LOPUH
Дата 15.7.2008, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Растение
*


Профиль
Группа: Участник
Сообщений: 245
Регистрация: 15.2.2008
Где: Красноярск

Репутация: 3
Всего: 4



Код

Private Function SheetExicts (sname) As Boolean
'Возвращает ИСТИНА если лист существует в активной рабочей книге
   Dim x As Object
   On Error  Resume Next
   Set  x = ActiveWorkbook.Sheets (sname)
   If Err = 0 Then SheetExicts = True _
          Else SheetExicts = False
End Function


Приблизительно так
PM MAIL   Вверх
FINANSIST
  Дата 16.7.2008, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Статус: Жив
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 11.4.2008
Где: Москва

Репутация: 13
Всего: 23



Цитата(CatF @  15.7.2008,  11:53 Найти цитируемый пост)
Здраствуй.

Помогите пожалуста добавить условие или немного изменить код.
Sub CreateTotal1C()

    Dim Ncol As Integer, x As Worksheet
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    On Error Resume Next
        Sheets("Таблица 1С").Delete
    On Error GoTo 0
    Worksheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = "Таблица 1С"
    Sheets(1).Columns("I").Copy [A1]: Sheets(1).Columns("H").Copy [B1]
    Rows("1:3").Delete
    Columns("A:D").ColumnWidth = 17
    Ncol = 1: Call SumDel(Ncol)
    Ncol = 3: Call SumDel(Ncol)
        
End Sub

Нужно добавить условие: если форма уже существует то её не надо удалять или создовать заново, нужно просто обновить.

Или немного изменить: чтобы программа не создовала или удаляла формы, а работала уже в существующей.

Заранее большое спасибо. 


А тупо закоментарить блок не пробовал??? smile 
Код

Sub CreateTotal1C()

    Dim Ncol As Integer, x As Worksheet
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    On Error Resume Next
 '       Sheets("Таблица 1С").Delete
    On Error GoTo 0
  '  Worksheets.Add After:=Sheets(Sheets.Count)
  '  ActiveSheet.Name = "Таблица 1С"
  ' +добавим строчку
    Sheet( "Таблица 1С").Activate

  Sheets(1).Columns("I").Copy [A1]: Sheets(1).Columns("H").Copy [B1]
    Rows("1:3").Delete
    Columns("A:D").ColumnWidth = 17
    Ncol = 1: Call SumDel(Ncol)
    Ncol = 3: Call SumDel(Ncol)
        
End Sub



Это сообщение отредактировал(а) FINANSIST - 16.7.2008, 16:22


--------------------
“...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности”
Эдуард Успенский, “Каникулы в Простоквашино”
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0436 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.