v7: Проверить пустое значение на бейсике #639822


#0 by Maximysis
Всем доброго дня! Сделал загрузку из экселя в документ. Теперь хочу его немного улучшить. надо  проверять ячейку на пустоту, 1с7 пофиг(( я загружаю так: Значение = Лист.Cells(х, у).Value; Есть ли у Value метод проверки на пустое значение? кто бейсик знает посоветуйте...
#1 by ЧеловекДуши
А причем тут 1С?
#2 by ЧеловекДуши
+ Мне тоже пофиг
#3 by ЧеловекДуши
+ Моё переменное = '' Вуаля
#4 by ЧеловекДуши
+ А так же Моё переменное = Null Вуаля
#5 by Maximysis
идея в проверке на nul на бейсике если не 0 а nul то забью значение предопределенной строкой, а потом буду сравнивать. функция IsEmpty вываливает ошибку, есть что другое??
#6 by Maximysis
ЧеловекДуши иди троль в другом месте
#7 by КонецЦикла
Если ПустоеЗначение(Значение) = 1
#8 by Maximysis
для 1с7 одно и тоже "0" и "Null"
#9 by КонецЦикла
Визуально что в ячейке находится? Что-то не вкурю откуда у екселя null
#10 by ЧеловекДуши
И вам не болеть. Nul or Null, да мне побоку. Смысл ты уловил. А по сути Value, в Екселе, всегда имеет текстовый тип. :)
#11 by ЧеловекДуши
+ Сори не посмотрел. Делай так И далее проверяй на Если ПустоеЗначение(Значение) = 1
#12 by КонецЦикла
Ну-ка... что такого сделает СокрЛП с пустой строкой? Опустошит жыстачайчшым образом?
#13 by Maximysis
в ячейке может ничего не находица а может и быть цифра нуль, проблема в том что 1с не понимает разница, а вот бейсик..
#14 by Maximysis
ничего не даст как будет пустая строка так и обрежется пустая строка.
#15 by Maximysis
ПустоеЗначение ему все ровно если будет 0 или Null
#16 by Maximysis
или ""
#17 by Maximysis
идея проверять до получения в 1С
#18 by Maximysis
кто нибудь так заморачивался с екселем?
#19 by КонецЦикла
Делай запрос к листу екселя, там что хочешь твори Или засасывай в ТЗ и твори там Непонял нужен ноль или нет и вообще в чем проблема
#20 by ЧеловекДуши
Какая нуль? Ты же про 1С 7.7? Чтение из екселе через ОЛЕ? Так тогда там всегда Строка.
#21 by ЧеловекДуши
+Биться как дятел об одно и то же место? Нет, ты первый :)
#22 by ЧеловекДуши
+Ты ему еще намекни, как это сделать ;)
#23 by Maximysis
повторяю 1С 7.7
#24 by КонецЦикла
Это для справки
#25 by ЧеловекДуши
Черз АДО, можно запрашивать запросы :)
#26 by Maximysis
спасиб кэП!!!
#27 by КонецЦикла
#28 by КонецЦикла
Фух...
#29 by ЧеловекДуши
+Да просто у этого чудика в поле нарисовано "0", и если делать "СокрЛП(Value)", то всегда будет не пусто. Ему надо преобразовать к нужному типу, типо ПустоеЗначение(Число(Value))
#30 by ЧеловекДуши
Тоже так подумал, ТС, тяжёлый :)
#31 by КонецЦикла
Да, число нормально
#32 by КонецЦикла
А может ему и не число нужно?
#33 by ЧеловекДуши
Нет, не нормально, там же ОЛЕ. Все имеет тип "Строка"
#34 by ЧеловекДуши
Может, но ДНК не излечимо :)
#35 by Maximysis
Ты не человек души а троль низнаю чего там) СокрЛП(Value) что за бред!!
#36 by ЧеловекДуши
Не груби, любитель НАТО, я не тролю в ветках про 1С, это святое.
#37 by ЧеловекДуши
Держи...    Попытка
#38 by Maximysis
повторяю ячейка может быть пустая,а может быть 0 но при получение в тексте будет пустое значение? Какое нато ты о чем????
#39 by ЧеловекДуши
#40 by ЧеловекДуши
Не отвлекайся, тролька
#41 by ЧеловекДуши
+ Процедура "ЗаписатьДанныеЕксельЧерезADO" не дописана. Но если ты Прораммист 1С, то почерпнешь для себя нужную информацию. Хотя, я сомневаюсь.
#42 by Maximysis
что за бред! как всегда нержи бесполезно длинный код типа я самый умный, попробуй разберись))))))
#43 by ЧеловекДуши
Там комментарии. И там запись Excel через ADO, без самого Excel-ля. :) А по сути там есть все, вплоть для получения списка страниц в екселе.
#44 by Maximysis
Кто с бейсиком работал люди отзовитесь
#45 by ЧеловекДуши
+Я на другое и не расчитывал :)
#46 by ЧеловекДуши
+ Какой бейсик? Вот тут ищи :)
#47 by Maximysis
короче не знаешь Excel.Application  нечего тролить!
#48 by КонецЦикла
Еще есть вариант: выполнить макрос екселя из 1с по замене то что не нужно на то что нужно ЗЫ. так и не понял что нужно автору
#49 by Maximysis
вопрос был не поро адо
#50 by Maximysis
не выход доки будут разные, вписывать макрос в док при открытии геморойней((
#51 by ЧеловекДуши
А вы неадекват. ;) Вас даже Многоуважаемый не понимает :)
#52 by ЧеловекДуши
Отдышись, и напиши нормально, что тебе надо. А то ЯнечегоНеПонимаю :)
#53 by КонецЦикла
Можно запускать макрос из одного и того же шаблона Он будет творить чудеса с файлом ЗЫ. Ваш кеп
#56 by Maximysis
да попробую если с бейсиком не разберусь(
#57 by КонецЦикла
Товарищи, будьте вежливы
#59 by ЧеловекДуши
Ему не по может. У него же много екселей и разного формата :)
#60 by КонецЦикла
Выведи Сообщить(Значение) Увидишь что там такое получается Далее орудуй по ситуации Никто не понял нужен ноль или нет и что вообще нужно
#61 by Maximysis
Нужен и ноль и пустое значение. Сейчас если пустое значение я заменяю на необходимые числа. Мне нужно отлавливать где в ексле пустое значение а где 0. чтобы нуль не трогать.
#62 by МимохожийОднако
Зачем это семерке? Она всё равно не различает пустое значение и нуль, если считывает число.
#63 by КонецЦикла
Тогда ПустаяСтрока, возможно, далее проверка на 0
#64 by Maximysis
вот по этому я и хочу определять это не в семерке.... Нет смотри. я загружаю ексел с ячейками а1=0 а2=null ПустоеЗначение = Лист.Cells(а, 1).Value = Лист.Cells(а, 2).Value; поэтом нужно чтото типа  Если Value.IsEmpty=1 Тогда текущаяСтрока="СтрокаИндификаторПустойСтроки"; Конецесли; а потом при обработке сравнивать Если текущееЗначение="СтрокаИндификаторПустойСтроки" Тогда
#65 by МимохожийОднако
к какой ошибке в семерке приводит то, что не можешь отличить Пустое значение от нуля?
#67 by Maximysis
в 1С7 ПустаяСтрока и 0 равны.
#68 by МимохожийОднако
То что они это давно ясно ))) Повторюсь: зачем нужно различать? Должно быть, разное поведение в семерке? В таком случае проще сначала запустить макрос и для пустого значения явно прописать нужное значение перед обработкой из 77
#69 by ЧеловекДуши
Спасибо :) А исключения в какой момент могут иметь место?
#70 by Maximysis
нету проверки на пустое значение( Да нужно различать я писал . да есть некрасивый вариант в ексели заменять 0 например на "#*123абв@!^", и потом сравнивать при загрузке. то хотелось бы все проверять при загрузке....
#71 by vde69
пустое значение вернет "неопределено" а NULL в екселе в ячейке не может лежать...
#72 by Maximysis
про Null я образно говорю) Как я понял  если пустая ячейка то ExcelЛист.Cells(НомерСтроки, НомерКолонки).Formula; вызовит ошибку и так поймать NUll??
#73 by vde69
в екселе есть функции ЕПУСТО, ЕНД но приведеный мною код корректно все отрабатывает...
#74 by Popkorm
#75 by Maximysis
Спасибо решил похожим способом Заметил что если в екселе был нуль то тип значения числовое, а если ячейка пустая то тип не определенный. Тема закрыта.
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С