Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Импорт из CSV в excel 2010 - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Импорт из CSV в excel 2010
valdemarg Дата: Понедельник, 30.01.2017, 09:09 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Доброго времени суток. Пытаюсь импортировать из CSV файла в Эксел. Ниже код отрабатывает ,но в экселе на вкладке "Данные" "Изменить связи" появляется связь и при повторном открытии файла появляется
сообщение обновить его, не могу понять почему. Разделитель у CSV файла точка с запятой.
[vba]
Код

Sub ImportTxt()
        With ActiveSheet.QueryTables.Add(Connection:= "TEXT;C:\Documents and Settings\user_name\folder\file.csv", Destination:= Range("$A$1"))
            .SaveData = True
            .AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1251
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFFalseemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.Refresh BackgroundQuery:=False
End With
End Sub
[/vba]


Сообщение отредактировал valdemarg - Понедельник, 30.01.2017, 09:44
 
Ответить
СообщениеДоброго времени суток. Пытаюсь импортировать из CSV файла в Эксел. Ниже код отрабатывает ,но в экселе на вкладке "Данные" "Изменить связи" появляется связь и при повторном открытии файла появляется
сообщение обновить его, не могу понять почему. Разделитель у CSV файла точка с запятой.
[vba]
Код

Sub ImportTxt()
        With ActiveSheet.QueryTables.Add(Connection:= "TEXT;C:\Documents and Settings\user_name\folder\file.csv", Destination:= Range("$A$1"))
            .SaveData = True
            .AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1251
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFFalseemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.Refresh BackgroundQuery:=False
End With
End Sub
[/vba]

Автор - valdemarg
Дата добавления - 30.01.2017 в 09:09
bmv98rus Дата: Понедельник, 30.01.2017, 21:34 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
valdemarg,

А что вы хотите , если вы не фактически импорт делаете, а запрос к этому файлу? А Это именно линковка. Если вам это не нужно то или
[vba]
Код
Workbooks.OpenText Filename:="C:\Users\mibliznyuk\Documents\user.txt", _ ......
[/vba]
или читать файл в массив, делить его на строки Rows = split(dim,vbcrlf), потом все строки на столбцы Fields=split(Rows(i),",") и вставить в нужную облать, или иные методы.


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 30.01.2017, 21:36
 
Ответить
Сообщениеvaldemarg,

А что вы хотите , если вы не фактически импорт делаете, а запрос к этому файлу? А Это именно линковка. Если вам это не нужно то или
[vba]
Код
Workbooks.OpenText Filename:="C:\Users\mibliznyuk\Documents\user.txt", _ ......
[/vba]
или читать файл в массив, делить его на строки Rows = split(dim,vbcrlf), потом все строки на столбцы Fields=split(Rows(i),",") и вставить в нужную облать, или иные методы.

Автор - bmv98rus
Дата добавления - 30.01.2017 в 21:34
valdemarg Дата: Вторник, 31.01.2017, 04:32 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
bmv98rus,
Спасибо за ответ. Вопрос появился, потому что в некоторых файлах оно появляется, а в некоторых нет.
А если после этой конструкции удалять все примерно ка кто так?
[vba]
Код
arrLinks = objWb1.LinkSources(1)
If Not IsEmpty(arrLinks) Then
For i = 1 to Ubound(arrLinks)
    objWb1.BreakLink arrLinks(i), 1
Next
End If
For Each Cn In objWb1.Connections
        Cn.Delete
Next
[/vba]
 
Ответить
Сообщениеbmv98rus,
Спасибо за ответ. Вопрос появился, потому что в некоторых файлах оно появляется, а в некоторых нет.
А если после этой конструкции удалять все примерно ка кто так?
[vba]
Код
arrLinks = objWb1.LinkSources(1)
If Not IsEmpty(arrLinks) Then
For i = 1 to Ubound(arrLinks)
    objWb1.BreakLink arrLinks(i), 1
Next
End If
For Each Cn In objWb1.Connections
        Cn.Delete
Next
[/vba]

Автор - valdemarg
Дата добавления - 31.01.2017 в 04:32
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!