Як я можу автоматично організувати дані з текстового файлу в електронній таблиці?


1

У мене є такий текстовий файл:

необроблені дані

і я хотів би організуватися в Excel так:

Excel дані

Я міг би це зробити вручну вручну для двох записів даних, але я хотів би мати можливість автоматизувати це для більшого масштабу. Я намагався поки що вводити дані в Excel за допомогою вбудованої функції, але я тут застряг. Я намагався перенести стовпці в рядки, але це не впорядковує їх так, як я хочу. Чи потрібно робити якесь кодування чи є вбудована функція? Якщо мені потрібно кодування, може хтось вказує мені в правильному напрямку?

Дякую за ваш час!


Ви використовували макроси? Вони написані у VBA "Visual Basic for Applications". Вам знадобиться цикл та перерва на текст "Клієнт"
cybernard

Відповіді:


0

Для цього я б спробував надбудову Power Query. У ньому є потужні команди для управління даними. Під ним є функції, але ви можете досягти багато чого, просто натиснувши кнопки у вікні запиту живлення. Візуально працювати в Power Query зазвичай набагато простіше, ніж кодування в VBA.

У мене був досвід цього конкретного виклику, і він спрацював. Ви можете завантажити та використовувати мій демо-файл із мого OneDrive:

http://1drv.ms/1AzPAZp

Це файл: демонстрація Power Query - реорганізація рядків у колонки.xlsx

Як описано на аркуші ReadMe, мені довелося написати лише одну просту функцію - решта - просто клацання навколо інтерфейсу користувача. Запит на владу чудовий!

Щоб використовувати його проти власних текстових файлів, просто відредагуйте перший крок у запиті, щоб вказати на ваш файл. До речі, ви навіть можете отримати Power Query, щоб перевести файли в папку, якщо потрібно.


Переписав мою відповідь, знайшовши простий спосіб, використовуючи Power Query.
Майк Мед

Це фантастично і саме те, що мені було потрібно! Побалакувавшись із цим ще трохи, мені вдалося обробити це для моїх потреб. Це було дуже інтуїтивно! Дякуємо, що познайомили мене з цим потужним інструментом! Якщо ви знайдете місце, яке ви рекомендуєте новачкам для освоєння Power Query, будь ласка, повідомте мене! Інакше ще раз дякую!
користувач2738229

Вас вітають - це було для мене гарним тренуванням / тренуванням на мозку. Навчання PQ не так багато - мабуть, найкращий спосіб почати - це записи сеансів з останніх конференцій Microsoft, наприклад, канал9.msdn.com/Events/TechEd/NorthAmerica/…
Майк Хоні

0

Powershell брудно.

$xlsFile="c:\temp\your.xlsx"
$excel = new-object -comobject excel.application
$excel.displayAlerts = $false
$wbs=$excel.workbooks.open($xlsFile)
$ws=$wbs.sheets.item(1)
$ws.cells.item(1,1) = "Customer"
$ws.cells.item(1,2) = "Apples"
$ws.cells.item(1,3) = "Bananas"
$ws.cells.item(1,4) = "Oranges"
$row = 1
$reader = [System.IO.File]::OpenText("c:\temp\your.txt")
try {
    while ($true) {
        $line = $reader.ReadLine()
        if ($line -eq $null) { break }
        if ($line.length -lt 3) {continue}
        switch ($line.substring(0,3))
            {
                "Cus" {
                    $val="'"+$line.split("#:")[1]
                    $row++
                    $ws.cells.item($row,1) = $val
                }
                "App" {
                    $val=$line.split(" ")[1]
                    $ws.cells.item($row,2) = $val
                }
                "Ban" {
                    $val=$line.split(" ")[1]
                    $ws.cells.item($row,3) = $val              
                }
                "Ora" {
                    $val=$line.split(" ")[1]
                    $ws.cells.item($row,4) = $val
                }
            }
    }
}
finally {
    $reader.Close()
}
$wbs.saveas($xlsFile)
$wbs.close()
$excel.quit()
$ws = $null
$wbs = $null
$excel = $null
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.