Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Массив типа стринг скинуть на лист без ошибок / 6 сообщений из 6, страница 1 из 1
11.07.2007, 16:38:55
    #34654112
Chelovek Tapok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
У меня есть необходимость работать с массивами типа стринг, после чего скидывать их на лист.
Возникает вопрос: Может есть какой-нибудь простой способ переброски данных без того, чтобы в ячейках были числа и даты представленные ввиде текста?
Решаю сейчас этот вопрос перебросом данных в массив типа Variant и на лист.
Файл, отображающий суть проблемы прикреплен.
...
Рейтинг: 0 / 0
11.07.2007, 16:41:51
    #34654127
Chelovek Tapok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
И, кстати, может кто-нибудь предложит альтернативу переброски данных в массив типа стринг, тому методу, который реализован в приложеном файле?
...
Рейтинг: 0 / 0
11.07.2007, 18:00:56
    #34654458
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
Как вариант! У меня так сложно получилось потому что я пытался не упустить вашу логику, а так может и проще можно

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Sub sad()
Dim iRow As Range, iCol As Range
Dim MassivString() As String, MassivVariant() As Variant
Dim i, j
i =  1 : j =  1 
With Sheets("1")
 
 ReDim MassivString( 1  To .UsedRange.Rows.Count,  1  To .UsedRange.Columns.Count)
 
  For Each iRow In .UsedRange.Rows
   For Each iCol In iRow.Columns
    MassivString(i, j) = iCol
    j = j +  1 
     Next iCol
    j =  1 : i = i +  1 
  Next iRow
  
  Sheets("2").Range(.UsedRange.Address) = MassivString
  For Each iCel In Sheets("2").UsedRange
   iCel.Formula = iCel.Formula
  Next iCel

End With
End Sub
...
Рейтинг: 0 / 0
11.07.2007, 19:47:14
    #34654717
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
Chelovek TapokВозникает вопрос: Может есть какой-нибудь простой способ переброски данных без того, чтобы в ячейках были числа и даты представленные ввиде текста?
Решаю сейчас этот вопрос перебросом данных в массив типа Variant и на лист.А что мешает изначально работать с Variant'ным массивом?
Вообще, ответ на начальный вопрос - нет. Если ты копируешь массив на лист, то все задействованные ячейки листа примут тип соответсвующий типу массива. Естественно в случае вариантного массива получаем вариантный тип ячейки.

Но если очень надо работать именно с текстовым массивом, то можно сделать так как начал показывать Deggasad, но он чуть-чуть не дошел до правильного ответа, не нужен там цикл на самом деле :)
Код: plaintext
1.
    Range(Cells(Nachalo( 1 ,  1 ), Nachalo( 2 ,  1 )), Cells(Nachalo( 1 ,  2 ), Nachalo( 2 ,  2 ))) = MassivString
    Sheets("2").UsedRange.Formula = Sheets("2").UsedRange.Formula
Секрет в этой последней строке, которая не должна работать с точки зрения классического программирования, но увы - работает.
...
Рейтинг: 0 / 0
11.07.2007, 21:46:02
    #34654872
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
White Owl Sheets("2").UsedRange.Formula = Sheets("2").UsedRange.Formula[/src]Секрет в этой последней строке, которая не должна работать с точки зрения классического программирования, но увы - работает.

И точно, а ведь знал же, но забыл, ведь програмирование у меня всего лишь хобби (да и программированием то, что я делаю, сложно назвать)
Спасибо что напомнил, мне пригодится.
...
Рейтинг: 0 / 0
12.07.2007, 12:37:47
    #34656031
Chelovek Tapok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Массив типа стринг скинуть на лист без ошибок
Спасибо Deggasad и White Owl.
Приятно, когда видишь, что нет предела совершеству.
В дальнейшем буду пользоваться полученными сведениями.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Массив типа стринг скинуть на лист без ошибок / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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