Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object
Sret objWdApp = CreateObject("Word.Application") objWrdApp.Visible = True Set objWrdDoc = objWrdApp.Documents.Open("\\sten.local\central\UserData\Морозов\Мои документы\ммм1.docx") With objWrdDoc.Range .Copy .Collapse wdCollapseEnd .Paste End With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}").Clear End Sub
[/vba]или[vba]
Код
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object, R As Object
Sret objWdApp = CreateObject("Word.Application") objWrdApp.Visible = True Set objWrdDoc = objWrdApp.Documents.Open("\\sten.local\central\UserData\Морозов\Мои документы\ммм1.docx") With objWrdDoc.Range Set R = objWrdDoc.Range(.Start, .End - 1) .InsertParagraphAfter .InsertAfter R End With End Sub
[/vba]
[vba]
Код
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object
Sret objWdApp = CreateObject("Word.Application") objWrdApp.Visible = True Set objWrdDoc = objWrdApp.Documents.Open("\\sten.local\central\UserData\Морозов\Мои документы\ммм1.docx") With objWrdDoc.Range .Copy .Collapse wdCollapseEnd .Paste End With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}").Clear End Sub
[/vba]или[vba]
Код
Sub OpenWord() Dim objWrdApp As Object, objWrdDoc As Object, R As Object
Sret objWdApp = CreateObject("Word.Application") objWrdApp.Visible = True Set objWrdDoc = objWrdApp.Documents.Open("\\sten.local\central\UserData\Морозов\Мои документы\ммм1.docx") With objWrdDoc.Range Set R = objWrdDoc.Range(.Start, .End - 1) .InsertParagraphAfter .InsertAfter R End With End Sub
добавил на всякий случай 2 кнопки 1я - для читабельности, 2я для удаления [vba]
Код
Sub gg() Dim cell As Range Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then With CreateObject("scriptcontrol") .Language = "JScript" Do While Not cell Is Nothing cell.Value = .Eval("unescape(""" & cell & """)") Set cell = Columns(10).FindNext(cell) Loop End With End If End Sub Sub ggg() Dim cell As Range, rng As Range, addr$ Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then addr = cell.Address Do If rng Is Nothing Then Set rng = cell _ Else Set rng = Union(rng, cell) Set cell = Columns(10).FindNext(cell) Loop While cell.Address <> addr If Not rng Is Nothing Then rng.EntireRow.Delete End If End Sub
[/vba]
добавил на всякий случай 2 кнопки 1я - для читабельности, 2я для удаления [vba]
Код
Sub gg() Dim cell As Range Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then With CreateObject("scriptcontrol") .Language = "JScript" Do While Not cell Is Nothing cell.Value = .Eval("unescape(""" & cell & """)") Set cell = Columns(10).FindNext(cell) Loop End With End If End Sub Sub ggg() Dim cell As Range, rng As Range, addr$ Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then addr = cell.Address Do If rng Is Nothing Then Set rng = cell _ Else Set rng = Union(rng, cell) Set cell = Columns(10).FindNext(cell) Loop While cell.Address <> addr If Not rng Is Nothing Then rng.EntireRow.Delete End If End Sub
wwizard, а вы уверены, что эти строки нужно удалить? а если их преобразовать в читабельный вид? [vba]
Код
Sub gg() Dim cell As Range Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then With CreateObject("scriptcontrol") .Language = "JScript" Do While Not cell Is Nothing cell.Value = .Eval("unescape(""" & cell & """)") Set cell = Columns(10).FindNext(cell) Loop End With End If End Sub
[/vba]
wwizard, а вы уверены, что эти строки нужно удалить? а если их преобразовать в читабельный вид? [vba]
Код
Sub gg() Dim cell As Range Set cell = Columns(10).Find("\u", , xlValues, xlPart) If Not cell Is Nothing Then With CreateObject("scriptcontrol") .Language = "JScript" Do While Not cell Is Nothing cell.Value = .Eval("unescape(""" & cell & """)") Set cell = Columns(10).FindNext(cell) Loop End With End If End Sub
Sub Макрос1() Application.ScreenUpdating = 0 With ActiveSheet.ListObjects(1) If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete [1!O1:O33].AdvancedFilter xlFilterCopy, , [1!M1], True [1!M:M].SpecialCells(2, 23).Copy .HeaderRowRange(1, 1).PasteSpecial xlPasteValues [1!M:M].Clear End With Application.ScreenUpdating = True End Sub
[/vba]
а я пишу [vba]
Код
ActiveSheet.ListObjects(1).DataBodyRange.Clear
[/vba] и у мну ничего не слетает
UPD. [vba]
Код
Sub Макрос1() Application.ScreenUpdating = 0 With ActiveSheet.ListObjects(1) If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete [1!O1:O33].AdvancedFilter xlFilterCopy, , [1!M1], True [1!M:M].SpecialCells(2, 23).Copy .HeaderRowRange(1, 1).PasteSpecial xlPasteValues [1!M:M].Clear End With Application.ScreenUpdating = True End Sub
Sub dd() With [A1].CurrentRegion .Value = Application.IfError(Evaluate(Join(Array("mmult(MID(", _ ",SEARCH({"":"","".""},", ")+2,2)/24/60^{0,1},{1;1})"), .Address(, , _ Application.ReferenceStyle))), .Value) .NumberFormat = "[hh]:mm" End With End Sub
[/vba]
а можно немного поизвращаццо? [vba]
Код
Sub dd() With [A1].CurrentRegion .Value = Application.IfError(Evaluate(Join(Array("mmult(MID(", _ ",SEARCH({"":"","".""},", ")+2,2)/24/60^{0,1},{1;1})"), .Address(, , _ Application.ReferenceStyle))), .Value) .NumberFormat = "[hh]:mm" End With End Sub
можно было бы, если бы Worksheet.Copy была бы функцией и возвращала скопированный лист, а так все попытки приводят только к увеличению количества строк[vba]
Код
имя_ = Range("B2") With Sheets.Add Sheets("ПФ").Cells.Copy .Cells .Name = [страницы_].Cells(Application.Match(имя_, [клиент_], 0), 1) End With
[/vba]
можно было бы, если бы Worksheet.Copy была бы функцией и возвращала скопированный лист, а так все попытки приводят только к увеличению количества строк[vba]
Код
имя_ = Range("B2") With Sheets.Add Sheets("ПФ").Cells.Copy .Cells .Name = [страницы_].Cells(Application.Match(имя_, [клиент_], 0), 1) End With