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

Вход

Регистрация

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

 

= Мир MS Excel/Как перенести в заданную ячейку Projecta ячейку из Экселя? - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Как перенести в заданную ячейку Projecta ячейку из Экселя?
Юрий_Нд Дата: Четверг, 23.11.2017, 02:54 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 441
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Доброй ночи всем кто не спит.
Вопрос в этой теме создаю только потому, что мой вопрос касается VBA, в первую очередь.
В одной из ранее начатых тем мне очень помог buchlotnik, и подсказал процедуры с помощью которых я мог бы выполнить некоторые расчеты программе Microsoft Project также, как это мы делаем в Экселе.
На сегодня мой вопрос-просьба:
Как перенести в заданную ячейку Projecta с указанным номером строчки и названием (либо номером) колонки, ячейку из экселя с указанным наименованием файла, номером листа, номером строчки и номером колонки.
Или, хотя бы, прошу подсказать, как это "делается" в Excel?
С уважением и благодарностью ______________ Юрий.
 
Ответить
СообщениеДоброй ночи всем кто не спит.
Вопрос в этой теме создаю только потому, что мой вопрос касается VBA, в первую очередь.
В одной из ранее начатых тем мне очень помог buchlotnik, и подсказал процедуры с помощью которых я мог бы выполнить некоторые расчеты программе Microsoft Project также, как это мы делаем в Экселе.
На сегодня мой вопрос-просьба:
Как перенести в заданную ячейку Projecta с указанным номером строчки и названием (либо номером) колонки, ячейку из экселя с указанным наименованием файла, номером листа, номером строчки и номером колонки.
Или, хотя бы, прошу подсказать, как это "делается" в Excel?
С уважением и благодарностью ______________ Юрий.

Автор - Юрий_Нд
Дата добавления - 23.11.2017 в 02:54
_Boroda_ Дата: Четверг, 23.11.2017, 09:15 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16734
Репутация: 6534 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Для Excel данные из закрытого файла можно взять вот так
[vba]
Код
Sub tt()
    p_ = "g:\Моя\Стереть\"
    f_ = "5699082.xlsx"
    s_ = "Лист1"
    r_ = 1
    c_ = 2
    t_ = "'" & p_ & "[" & f_ & "]" & s_ & "'!R" & r_ & "C" & c_
    Range("B1") = ExecuteExcel4Macro(t_)
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеДля Excel данные из закрытого файла можно взять вот так
[vba]
Код
Sub tt()
    p_ = "g:\Моя\Стереть\"
    f_ = "5699082.xlsx"
    s_ = "Лист1"
    r_ = 1
    c_ = 2
    t_ = "'" & p_ & "[" & f_ & "]" & s_ & "'!R" & r_ & "C" & c_
    Range("B1") = ExecuteExcel4Macro(t_)
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 23.11.2017 в 09:15
buchlotnik Дата: Пятница, 24.11.2017, 00:36 | Сообщение № 3
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
Юрий_Нд, ну и где файл этого Projecta? где файл этого Excel-я? как-то неохота с нуля-то рисовать rules
 
Ответить
СообщениеЮрий_Нд, ну и где файл этого Projecta? где файл этого Excel-я? как-то неохота с нуля-то рисовать rules

Автор - buchlotnik
Дата добавления - 24.11.2017 в 00:36
Юрий_Нд Дата: Пятница, 24.11.2017, 16:01 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 441
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Доброго дня Всем.
buchlotnik, очень Вам благодарен, что Вы нашли время отозваться.
Прошу прощения за такую оплошность, что не приложил исходники-болванки.
Ещё есть пожелания, чтобы кроме "красивого" варианта переноса данных, был представлен вариант переноса по отдельной ячейке, с помощью метода "цикл в цикле". Или просто способ переноса отдельной ячейки Excel-я.
С уважением и благодарностью __________ Юрий.
К сообщению приложен файл: _-2.xlsx (9.0 Kb) · _-2.rar (21.3 Kb)
 
Ответить
СообщениеДоброго дня Всем.
buchlotnik, очень Вам благодарен, что Вы нашли время отозваться.
Прошу прощения за такую оплошность, что не приложил исходники-болванки.
Ещё есть пожелания, чтобы кроме "красивого" варианта переноса данных, был представлен вариант переноса по отдельной ячейке, с помощью метода "цикл в цикле". Или просто способ переноса отдельной ячейки Excel-я.
С уважением и благодарностью __________ Юрий.

Автор - Юрий_Нд
Дата добавления - 24.11.2017 в 16:01
buchlotnik Дата: Суббота, 25.11.2017, 01:16 | Сообщение № 5
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
Ничего не понял про "красивого" и всё такое, про закрытый файл в первом посте тоже вроде ни слова (отдельная тема есть), циклом заполнить задачи можно как-то так: [vba]
Код
Sub get_tasks()
    Dim rng(), xl As Object, r%, c%, i%, j%
    Set xl = CreateObject("Excel.Application")
    With xl
        .Workbooks.Open (ThisProject.Path & Application.PathSeparator & "2.xlsx")
        .Activesheet.Range("E9").CurrentRegion.Select
        r = .Selection.Rows.Count - 1
        c = .Selection.Columns.Count
        ReDim rng(1 To r, 1 To c)
        For i = 1 To r
            For j = 1 To c
                rng(i, j) = .Activesheet.Range("E9").Offset(i, j - 1).Value
            Next j
        Next i
        .Quit
    End With
    
    For i = 1 To r
        SelectTaskField Row:=i, Column:="Number1", RowRelative:=False 'строчка из макрорекодера - select нужен один для выбора целевой задачи, далее идут четыре set
        SetTaskField Field:="Name", Value:=rng(i, 1)
        SetTaskField Field:="Number1", Value:=rng(i, 2)
        SetTaskField Field:="Number2", Value:=rng(i, 3)
        SetTaskField Field:="Number3", Value:=rng(i, 4)
    Next i
End Sub
[/vba]
Соответственно [vba]
Код
ThisProject.Path & Application.PathSeparator & "2.xlsx"
[/vba]можете менять на другой конкретный путь [vba]
Код
.Activesheet.Range("E9")
[/vba] можете менять на конкретный лист и другой диапазон [vba]
Код
.CurrentRegion.Select
[/vba] это нужно если не одна ячейка, а весь прилегающий диапазон считываем

Текущий макрос открывает заданный файл Excel из той же папки, считывает диапазон от E9 (кроме заголовков) и последовательно пишет в Project
К сообщению приложен файл: Project_Yurij.zip (43.1 Kb)


Сообщение отредактировал buchlotnik - Суббота, 25.11.2017, 11:29
 
Ответить
СообщениеНичего не понял про "красивого" и всё такое, про закрытый файл в первом посте тоже вроде ни слова (отдельная тема есть), циклом заполнить задачи можно как-то так: [vba]
Код
Sub get_tasks()
    Dim rng(), xl As Object, r%, c%, i%, j%
    Set xl = CreateObject("Excel.Application")
    With xl
        .Workbooks.Open (ThisProject.Path & Application.PathSeparator & "2.xlsx")
        .Activesheet.Range("E9").CurrentRegion.Select
        r = .Selection.Rows.Count - 1
        c = .Selection.Columns.Count
        ReDim rng(1 To r, 1 To c)
        For i = 1 To r
            For j = 1 To c
                rng(i, j) = .Activesheet.Range("E9").Offset(i, j - 1).Value
            Next j
        Next i
        .Quit
    End With
    
    For i = 1 To r
        SelectTaskField Row:=i, Column:="Number1", RowRelative:=False 'строчка из макрорекодера - select нужен один для выбора целевой задачи, далее идут четыре set
        SetTaskField Field:="Name", Value:=rng(i, 1)
        SetTaskField Field:="Number1", Value:=rng(i, 2)
        SetTaskField Field:="Number2", Value:=rng(i, 3)
        SetTaskField Field:="Number3", Value:=rng(i, 4)
    Next i
End Sub
[/vba]
Соответственно [vba]
Код
ThisProject.Path & Application.PathSeparator & "2.xlsx"
[/vba]можете менять на другой конкретный путь [vba]
Код
.Activesheet.Range("E9")
[/vba] можете менять на конкретный лист и другой диапазон [vba]
Код
.CurrentRegion.Select
[/vba] это нужно если не одна ячейка, а весь прилегающий диапазон считываем

Текущий макрос открывает заданный файл Excel из той же папки, считывает диапазон от E9 (кроме заголовков) и последовательно пишет в Project

Автор - buchlotnik
Дата добавления - 25.11.2017 в 01:16
  • Страница 1 из 1
  • 1
Поиск:

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