Форум: "Начинающим";
Текущий архив: 2015.10.25;
Скачать: [xml.tar.bz2];
ВнизКартинки в таблицу Word Найти похожие ветки
← →
MisterX (2014-05-26 13:42) [0]Всем привет!
Прошу вашей помощи. Нужно картинку image1 вставить в ячейку (1,1) таблицы Ворд нажав кнопочку! Потом другую картинку image1 в ячейку (1,2)! Потом следующую картинку в ячейку (3,1) и т.д.
Помогите пожалуйста, как можно это реализовать.
Заранее благодарю!
← →
sniknik © (2014-05-26 13:47) [1]> Помогите пожалуйста, как можно это реализовать.
универсально, для офиса, переведя созданный "руками" макрос.
Sub Макрос3()
"
" Макрос3 Макрос
" Макрос записан 26.05.2014 ws-131
"
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=2, NumColumns:= _
5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed
With Selection.Tables(1)
If .Style <> "Сетка таблицы" Then
.Style = "Сетка таблицы"
End If
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = True
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = True
End With
Selection.InlineShapes.AddPicture FileName:= _
"C:\Documents and Settings\xxxx\Мои документы\Мои рисунки\3123142.JPG" _
, LinkToFile:=False, SaveWithDocument:=True
End Sub
← →
sniknik © (2014-05-26 13:52) [2]+
раз уж фигурирует "таблица" то лучше использовать excel.
← →
MisteX (2014-05-26 14:27) [3]Нужно чтоб автоматически вставлялась картинка
← →
sniknik © (2014-05-26 14:33) [4]чудес не бывает... сначала все одно придется сделать "руками", после руками же запрограммировать понятое, руками запустить полученную программу (настроить любой "авто") ... и вот потом, программа, что нибудь сделает "автоматически", например вставит картинку.
или думал в сказке живешь? типа спросил, и золотая рыбка раз тебе готовый код... не, так не бывает.
← →
MisteX (2014-05-26 14:35) [5]я знаю как одну картинку вставить!
← →
sniknik © (2014-05-26 14:39) [6]тогда открою страшную тайну... чтобы вставить две нужно повторить действие для одной, первой, но указать другую. чтобы 3... ну и т.д.
← →
oldman © (2014-05-26 14:40) [7]
> sniknik © (26.05.14 13:47) [1]
Не трать время...
http://delphimaster.net/view/2-1400830587/
← →
sniknik © (2014-05-26 14:42) [8];(
← →
MisteX (2014-05-26 14:49) [9]sniknik, а если у тебя 200 картинок?
← →
junglecat (2014-05-26 14:55) [10]> если у тебя 200 картинок?
надо 200 раз сделать ctrl+c / ctrl+v кода из [1]
← →
MisteX (2014-05-26 14:59) [11]oldman с ACol и ARow понятно. Как забить переменную чтоб получилась то что нужно?
procedure TForm1.Button2Click(Sender: TObject);
begin
for i:=0 to 100 do
for j:=0 to 1 do
begin
ClipBoard.Assign(Image1.Picture);
App.ActiveDocument.Tables.Item(1).Cell(i,j).Selection.Paste;
end;
end;
Начало верное?
← →
MisteX (2014-05-26 15:00) [12]junglecat а если Вы не знаете сколько их будет?
← →
sniknik © (2014-05-26 15:02) [13]> sniknik, а если у тебя 200 картинок?
плевать. программируешь любой алгоритм вставки (нормально с параметрами, а не хардкодя позиции ячеек), + цикл на n-раз... хотя не, n мало, m раз!
← →
sniknik © (2014-05-26 15:08) [14]> Начало верное?
нет, "хардкод" картинки, ее тоже нужно менять, и лучше из файла ([1]) а не клипборда.
← →
MisteX (2014-05-26 15:17) [15]блондинкой себя чувствую:(
← →
MisteX (2014-05-26 15:21) [16]procedure TForm1.Button2Click(Sender: TObject);
i,j,N:Integer;
begin
for i:=0 to N do
for j:=0 to 1 do
begin
end;
end;
Как вставить картинку в ячейку (1,1) например? Всего 2 столбца, 5 строк
← →
sniknik © (2014-05-26 15:39) [17]примерно так (код написан прямо здесь без проверки)
for i:=0 to N do
for j:=0 to 1 do
App.ActiveDocument.Tables.Item(1).Cell(i,j).InlineShapes.AddPicture(FileName:= MakeFileName(i,j)+".JPG", LinkToFile:=False, SaveWithDocument:=True);
твоя функция MakeFileName - тут по i, j должно определятся имя вставляемого файла. зависимость должна быть, если нету сделай ее.
← →
sniknik © (2014-05-26 15:40) [18]упс Selection случайно вырезал... ну неважно.
← →
MisteX (2014-05-26 15:47) [19]Видел другую тему, там некий SkyWalker писал. Что-то подобное нужно.
То есть что я уже сделал:
в комбобокс выбираю имя файла, на имэйж1 появляется соответсвующая картинка.
и вот ее нужно при помощи Button1 вставить в ячейку 1,1 например.
потом выбираю в комбо другое имя файла, на имэйдж появляется соответствующая картинка, тык Button, она в ячейке 1,2.
и т.д.
Вот как это сделать?
Или у меня лыжи не едут?:)
← →
sniknik © (2014-05-26 15:58) [20]Palladin © (23.05.14 18:03) [45]
> Бездарная потеря времени.
+1
← →
MisteX (2014-05-26 16:02) [21]почему?:(
← →
sniknik © (2014-05-26 16:08) [22]"показания" меняются по ходу. то нужен список, то уже по одному выбирать (а как же про 200-раз? + одну то говорил можешь, и в чем теперь проблема? вот оно выбор всегда по одной...).
не реализуемо.
есть единственный вариант, но никто на него не согласен - нанять программиста. ОЧЕНЬ дорого, т.к. такая же непоследовательность будет и в ТЗ.
← →
MisteX (2014-05-26 16:33) [23]блин((( думал здесь помогут(((
Спасибо большое всем:) в таком случае не буду заморачиваться)))
← →
sniknik © (2014-05-26 16:47) [24]> блин((( думал здесь помогут(((
здесь именно что помогают, с конкретными проблемами/неясностями, а делать предполагается должен все таки автор.
ты же явно думал о чем-то другом, т.к. на помощь не реагировал, ждал чего-то другого.
> в таком случае не буду заморачиваться)))
хэпи энд.
и вам не хворать.
← →
brother © (2014-05-26 17:01) [25][19] ага, это ты и есть... и комбобоксы и ворд, все как у него и у Вас) ...
← →
Inovet © (2014-05-26 18:47) [26]> [5] MisteX (26.05.14 14:35)
> я знаю как одну картинку вставить!
Это ты третий раз за месяц говоришь. Допустим, знаешь. Тогда в чём проблема вставить несколько неняя в цикле координаты (номер) ячейки? С диска получить нужные файлы? Тогда см функции
FindFirst
FindNext
FindClose
Пример есть в справке.
← →
Inovet © (2014-05-26 18:48) [27]> [26] Inovet © (26.05.14 18:47)
> Это ты
В смысле - тот Скайвокер и ты говорите.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2015.10.25;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.002 c