dodání ihned! nové
Hledáme programátora do rostoucího týmu ITnetwork.cz, 100% home office, 100 flexibilní pracovní doba. Více informací
Black Friday je tu! Využij jedinečnou příležitost a získej až 80 % znalostí navíc zdarma! Více zde
BF
Avatar
Rostak
Člen
Avatar
Rostak:2.12.2016 22:40

Dobrý den,
objevil na anglických stránkách makro co posílá z Excelu do Wordu. Neumím ho upravit pro svoji potřebu. Proto Vás žádám o pomoc. Umazal jsem příkaz vytvoření nového dokumentu. Tak by to mělo chodit v každém dokumentu. Ale nevím jak zprávě definovat buňky Excelu.Teď jsou vybrat buňky ve sloupci A2 až jaké zadám číslo. Já bych potřeboval  dva sloupce buňky B1 až B3 a C1 až C3. Ve wordu bych to potřeboval do neviditelné tabulky o třech řádcích také ve dvou sloupcích tak jak to udělal v předloze co už jsem posílal už dřív jsem na forum. A ještě šlo by definovat jen dokument Excel, ze kterého se to bude vybírat. V současnosti se to musí vybírat ručně a pak zavřít a to se mi zdá nepraktické. Myslím si že je to docela zajímavé makro co by mohlo zajímat víc lidí. 

Option Explicit

Sub Example2()
Dim intChoice As Integer
Dim strPath As String

'only allow the user to select one file
Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = False
'make the file dialog visible to the user
intChoice = Application.FileDialog(msoFileDialogOpen).Show
'determine what choice the user made
If intChoice <> 0 Then
    'get the file path selected by the user
    strPath = Application.FileDialog( _
        msoFileDialogOpen).SelectedItems(1)
    Call AutomateExcel(strPath)

End If
End Sub

Private Sub AutomateExcel(ByVal strPath As String)
Dim objExcel As Object
Dim objWorkbook As Object

Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objWorkbook = objExcel.Workbooks.Open(strPath)

Call ReadData(objWorkbook)
End Sub

Private Sub ReadData(ByRef objWorkbook As Object)
Dim i As Integer

Selection.Delete Unit:=wdCharacter, Count:=1
For i = 1 To 5
    Selection.TypeText Text:= _
        objWorkbook.sheets(1).Cells(i + 1, 1)
    'move to the next line
    Selection.TypeParagraph
Next i
End Sub
 
Odpovědět
2.12.2016 22:40
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.