powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel. запись значения из переменной String в ячейку
15 сообщений из 15, страница 1 из 1
Excel. запись значения из переменной String в ячейку
    #34816578
Проблема в следующем, в процедуре имеем cells(1,1).Value = cTxt, где cTxt переменная типа String, если длина строки больше 255 символов то в ячейку попадают только первые 255, как сделать так чтобы все содержимое cTxt попало в ячейку?
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816601
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет такого, всё должно попадать
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816634
Я передаю значение в переменную через OLE2 из оракловых формсов, при этом если вывожу MsgBox то вижу весь текст, а в ячейку попадает только 255 символов
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816670
Len дает 615, а в ячейке вижу 255 символов
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816680
Причем Len(cells(1,1).Value) тоже 615 показывает, а на экране 255
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816699
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Введите в ячейку A1 300 символов и запустите этот код
Код: plaintext
1.
2.
3.
4.
Sub test()
Dim x As String
x = Range("A1").Value
Range("A2").Value = x
End Sub
сколько получилось в ячейке A2 символов?

З.ы. А какая разница откуда переменная получила своё значение?
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816735
Все нормально получилось, столько же сколько и в первой ячейке.

Я думал что режется при передаче из формсов, но msgbox и len непосредственно в процедуре дают полную строку, т.е в Excel попадает не обрезанная строка, а присвоение этой строки ячейке почему то обрезает ее, правда процедура тоже запускается через OLE2
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816762
Deggasad
Вставил ваш код в свою процедуру, отрабатывает правильно а переденную строку все равно режет
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816792
Фотография Дадахан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выложите файл excel с этой ячейкой
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816807
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Меня немного смущает вот этот пост
Вопрос по ячейкеПричем Len(cells(1,1).Value) тоже 615 показывает, а на экране 255

Вопрос по ячейкеВставил ваш код в свою процедуру, отрабатывает правильно а переденную строку все равно режет
Deggasad сколько получилось в ячейке A2 символов?



Вопрос по ячейкеправда процедура тоже запускается через OLE2
Может в этом и есть причина
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816843
Я немного наврал приведенная Deggasad процедура у меня тоже не срабатывает так как надо, правда фомрула длины строки на листе показывает 300, а в ячейке 255.

Похоже проблема в этом куске, при копировании листа в новую книгу, обрезаются все ячейки на листе, код не мой не подскажете что может вызвать такой эффект?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
    Dim CaptionWindow1 As String
    Dim CaptionWindow2 As String
    Dim CountSheet As Integer
    CaptionWindow1 = ActiveWindow.Caption
    Workbooks.Add
    CaptionWindow2 = ActiveWindow.Caption
    ActiveWindow.WindowState = xlMaximized
    Workbooks(CaptionWindow1).Worksheets("List1").Copy Before:=Workbooks(CaptionWindow2).Worksheets( 1 )
    Windows(CaptionWindow2).View = xlPageBreakPreview
    Windows(CaptionWindow2).View = xlNormalView
    CountSheet = Workbooks(CaptionWindow2).Worksheets.Count
    Application.DisplayAlerts = False
    For i = CountSheet To  2  Step - 1 
        Workbooks(CaptionWindow2).Worksheets(i).Delete
    Next
    Application.DisplayAlerts = True
    Workbooks(CaptionWindow2).Worksheets( 1 ).Name = "List1"
    Workbooks(CaptionWindow1).Close SaveChanges:=False
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816877
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При копировании листа все ячейки обрезаются - это да, с этого и надо было начинать!
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816891
DeggasadПри копировании листа все ячейки обрезаются - это да, с этого и надо было начинать!Спасибо!

я с ёкселем особо не работаю, не знал такой тонкости :(
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34816912
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Советы:
- не хранить в ячейке более 255 символов
- хранить описание в примечании
- разбивать на несколько ячеек
- не копировать лист, а например переносить.
- копировать лист и после копирования пробегаться по ячейкам старого листа если в ячейки более 255 символов, то её посторно копировать в новый лист как ячейку.
- сначала копировать лист потом заполнять значениями.
- ... много всяких ещё
...
Рейтинг: 0 / 0
Excel. запись значения из переменной String в ячейку
    #34817567
DeggasadСоветы:
- не хранить в ячейке более 255 символов
- хранить описание в примечании
- разбивать на несколько ячеек
- не копировать лист, а например переносить.
- копировать лист и после копирования пробегаться по ячейкам старого листа если в ячейки более 255 символов, то её посторно копировать в новый лист как ячейку.
- сначала копировать лист потом заполнять значениями.
- ... много всяких ещёСпасибо, остановился на варианте с копированием ячейки после копирования листа :)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Excel. запись значения из переменной String в ячейку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]