Вход | Регистрация

1С:Предприятие ::

Метки:

Импорт из ексела

Я
   lexa
 
15.04.04 - 12:47
Как проверить значение в ячейке ексела (не содержит ли она ошибку)
 
  Рекламное место пустует
   IAm
 
1 - 15.04.04 - 12:49
Если Найти(Экслеь.Cells(y,x).value, "ошибку") > 0 Тогда
Сообщить("Содержит ошибку");
КонецЕсли;
   lexa
 
2 - 15.04.04 - 12:58
Если Найти(НашЛист.Cells(i,2).Value, "ошибку") = 0 Тогда 
            ЦеныИзФайла.Цена = НашЛист.Cells(i,2).Value;
        КонецЕсли; 
в ячейке содержится #ЗНАЧ
после чего все зависает
   NastyFrog
 
3 - 15.04.04 - 13:23
Если Найти(НашЛист.Cells(i,2).text, "#ЗНАЧ") = 0 Тогда 

           ЦеныИзФайла.Цена = НашЛист.Cells(i,2).Value; 
       КонецЕсли;
   lexa
 
4 - 15.04.04 - 13:38
так ячейка содержит ошибку (например деленин на 0), а #ЗНАЧ - это екселовское обозначение. Короче когда добираюсь до этой ячейки виснет и 1с и ексел
   SiMazx
 
5 - 15.04.04 - 13:42
Чтобы проверить значение ячейки, его надо вычислить...
Если при вычислении возникает ашыпка - все, баста карапузики...
   NastyFrog
 
6 - 15.04.04 - 13:46
может Попытка ?
В ехеле в эту ячейку данные как попадают? Формула? Скрипт?
   SiMazx
 
7 - 15.04.04 - 14:03
(6) Попытка попыткой, а ехель повесится...
   lexa
 
8 - 15.04.04 - 14:10
так че делать то
   Рупор абсурда
 
9 - 15.04.04 - 14:22
(7) Чёй-то он повесится?
   NastyFrog
 
10 - 15.04.04 - 14:32
(8)В ехеле в эту ячейку данные как попадают? Формула? Скрипт?
 
  Рекламное место пустует
   lexa
 
11 - 15.04.04 - 14:41
формула
   NastyFrog
 
12 - 15.04.04 - 14:48
если в ехеле валуй ячейки с ошибкой проверять, тада повесится, а техт - нет
   lexa
 
13 - 15.04.04 - 14:53
а какие методы у ячейки есть или это в ексельном хелпе посмотреть
   NastyFrog
 
14 - 15.04.04 - 15:09
Если ехель всё равно виснет, то в ехеле скрипт запусти сначала(в копии прайса - из него потом данные в 1с возмешь)
Sub test()
NumCol = 2' Номер проверяемой колонки
CountRow=10 'количество проверяемых строк
For i = 1 To CountRow
If Cells(i, NumCol).Text = ""#ЗНАЧ!" Then
Cells(i, NumCol).Formula = ""
Cells(i, NumCol).Value = ""
Cells(i, NumCol) = "ERROR"
End If
Next
End Sub

потом в 1с 
Если Найти(НашЛист.Cells(i,2).text, "ERROR") = 0 Тогда 
          ЦеныИзФайла.Цена = НашЛист.Cells(i,2).Value; 
      КонецЕсли;
   lexa
 
15 - 15.04.04 - 16:16
Спасибо сделал так:
             Если НашЛист.Cells(i,2).text <> "#ЗНАЧ!"  Тогда 

                ЦеныИзФайла.Цена = НашЛист.Cells(i,2).Value;
            Иначе  
                ЦеныИзФайла.Цена = 0;    
            КонецЕсли; 
работает


Список тем форума
Рекламное место пустует  
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит Тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует