Мне нужно показать данные Excel на презентабельной веб-странице или в документе Word? - PullRequest
0 голосов
/ 06 февраля 2009

У меня есть результаты опроса, которые отформатированы в Excel отлично. Затем мне нужно показать эти результаты индивидуально с заголовками на презентабельном слове doc или на веб-странице? Есть ли возможность сделать это.

Например:

столбец 1 - столбец 2

результат 1 - результат 1

результат 2 - результат 2

до

Колонна 1

результат один

столбец 2

результат один

столбец 1

результат 2

Колонна 2

результат 2

извините, если это не имеет смысла.

Спасибо

Ответы [ 2 ]

1 голос
/ 06 февраля 2009

Звучит так, как будто вам нужно использовать «Mail Merge» изнутри слова, а затем предоставить таблицу Excel в качестве источника данных.

0 голосов
/ 06 февраля 2009

В вашем вопросе не так много информации, но кажется, что вы можете использовать макрос для преобразования ваших данных. Я написал быстрый макрос, который берет данные в представленном вами формате и выводит их так, как вы указали.

Я бы использовал приведенный ниже макрос для создания новой рабочей таблицы в Excel, а затем манипулировал ею или вставлял ее в Word по мере необходимости. Без дополнительной информации сказать больше нечего.

**Input**
Column A      Column B
Result A1     Result B1
Result A2     Result B2
**Output**
Column A
Result A1
Column B
Result B1
Column A
Result A2
Column B
Result B2

Вот макрос:

' Transforms the current sheet
' This method takes columns and rows and outputs a
' single This is not a transpose method, but similar.
Public Sub TransformSheet()
    Dim SourceSheet As Worksheet
    Dim ResultSheet As Worksheet
    Dim iSourceColumn As Long, iSourceRow As Long
    Dim iResultColumn As Long, iResultRow As Long
    Dim iHeaderRow As Long
    Dim UseCopyPaste As Boolean
    ' Change source and result sheets as necessary
    Set SourceSheet = ActiveSheet
    Set ResultSheet = ActiveWorkbook.Sheets("Sheet2")
    ' Options
    UseCopyPaste = True
    iHeaderRow = 1
    iResultColumn = 1
    iResultRow = 1
    ' Main Loop
    For iSourceRow = 2 To SourceSheet.UsedRange.Rows.Count
        For iSourceColumn = 1 To SourceSheet.UsedRange.Columns.Count
            If UseCopyPaste Then
                ' Header Column
                SourceSheet.Cells(iHeaderRow, iSourceColumn).Copy
                ResultSheet.Cells(iResultRow, iResultColumn).PasteSpecial xlPasteAll
                iResultRow = iResultRow + 1
                ' Result  Column
                SourceSheet.Cells(iSourceRow, iSourceColumn).Copy
                ResultSheet.Cells(iResultRow, iResultColumn).PasteSpecial xlPasteAll
                iResultRow = iResultRow + 1
            Else
                ' Header Column
                ResultSheet.Cells(iResultRow, iResultColumn) = _
                    SourceSheet.Cells(iHeaderRow, iSourceColumn).Value
                iResultRow = iResultRow + 1
                ' Result Column
                ResultSheet.Cells(iResultRow, iResultColumn) = _
                    SourceSheet.Cells(iSourceRow, iSourceColumn).Value
                iResultRow = iResultRow + 1
            End If
        Next iSourceColumn
    Next iSourceRow
End Sub
...