Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 След.
Скомбинировать накопительную диаграмму с графиком
 
Последний вопрос: как убрать цифры из легенды "Температура2......"?
___________________
Сделал сам.
p.s. Андрей быстрее... :)
Изменено: MrBrown - 11 Янв 2019 14:05:10
Скомбинировать накопительную диаграмму с графиком
 
Андрей VG, замечательно!, восхитительно!
Мне остаётся только [до предела обнаглеть и] попросить вставить ещё одну линию "Температура2", так как у меня - ну не получается! Не могу уяснить комбинирование диаграмм.
Пожалуйста...
_______________
Через пять минут: вроде, получилось сделать самому.. Что-то начинаю понимать.
___________________
Да, получилось!

Вопрос решён. Моя благодарность всем, принявшим участие в решении.
Отдельная - Андрею.
Изменено: MrBrown - 11 Янв 2019 13:48:41
Скомбинировать накопительную диаграмму с графиком
 
vikttur,
Цитата
Название тоже Дмитрий предложил...
Надеюсь, он не обидится на меня за "спасибо" не по адресу. :)
Дмитрий(The_Prist) Щербаков,  увы, не годится.
Теперь линейный график не хочет вставать как надо - узлами по границам слоёв.
Пойду гуглить, может что при помощи VBA получится...
Скомбинировать накопительную диаграмму с графиком
 
Дмитрий(The_Prist) Щербаков, благодарю за файлик, сейчас попробую разобраться.
Ув. модератор, также моя благодарность за изменение названия темы..
Сам я не нашёл способа, как менять тему, потом погуглил и нашёл такое: тынц
Скомбинировать накопительную диаграмму с графиком
 
Линейчатая с накоплением, и линейный график с узлами.
Вот, которая "с накоплением", не получается, как отдельно расположенная правая диаграмма (или здесь: тынц )
Прошу помощи.
_______________________
Добавляю: в идеале должно получаться, как Вар1 или Вар2
(отрисовал в автокаде, без цвета, но это не важно)
Изменено: MrBrown - 11 Янв 2019 11:43:57
Возможно ли повернуть диаграмму по оси Z?
 
Дмитрий(The_Prist) Щербаков, получилось, благодарю.
Возможно ли повернуть диаграмму по оси Z?
 
Андрей VG, прошу извинить, но - "не догоняю", как получилось построить горизонтальную диаграмму?
Сам пробую и не нахожу "нужной кнопочки".
Подскажите, пожалуйста.
Возможно ли повернуть диаграмму по оси Z?
 
Андрей VG, спасибо! Я как-то не увидел в обилии видов диаграмм нужную.
Полдела сделано. Теперь буду накладывать линейные диаграммы.
Возможно ли повернуть диаграмму по оси Z?
 
Здравствуйте!
Возникла необходимость в Excel автоматизировать отображение стены здания в разрезе с указанием слоёв:
штукатурка-кирпич-утеплитель-кирпич-штукатурка.
Это как один вариант из множества.
Необходимо, чтобы диаграмма располагалась, с вертикальными слоями (вложение "Диагр1")
А она работает только как ("Диагр2").
Есть ли варианты поворота картинки как надо? Пусть даже неправильным, "кривым", способом.
Работа в фотошопе исключается, так как диаграмма должна динамически меняться при изменении толщины/добавлении/убавлении количества слоёв.
А, может быть, существует какой-нибудь макрос по моей теме? Подкиньте ссылку, пожалуйста.
Спасибо.
p.s. Office 2016.
p.p.s в последующем на этот "пирог" будут накладываться линейные диаграммы распределения температуры по слоям для определения местонахождения точки росы (последнее написал для понимания тем, кто разбирается в теплотехнических расчётах зданий).
И ещё: не обязательно диаграмма должна быть объёмной. Можно и 2D.
--------------------------------------------
Только что пришла мысль: может быть, возможно не поворачивать диаграмму, а изменить толщину столбцов согласно данным, при одинаковой их высоте.
Изменено: MrBrown - 11 Янв 2019 09:18:25
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Inexsu, перевёл.
С наступающим Новым годом!
Автоматическая простановка страниц и формирование оглавления
 
Вопрос решён здесь
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Юрий М, ОК, прошу почистить мои посты про колонтитулы. Вы правы.
Inexsu,  Номер Яндекс-кошелька в Вашем профиле - действующий?
Я хотел бы отблагодарить Вас разумной денежкой. Считаю, что Ваша помощь здесь - рабочий комплект макросов с нуля, - на уровне услуги, а не просто подсказка.
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Inexsu, Посмотрел код.
Столько функций!!!
Да мне ни в жисть такое не сваять.
Inexsu,  "Я внутренне Вами просто нецензурно восхищаюсь".
Благодарю за этот новогодний подарок.
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Юрий М, см. пост #6.
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Михаил Лебедев, а как создать верхний и нижний колонтитулы, как в моём файле?
Чтобы вверху была заштрихованная область с адресом, номер страницы.
А внизу и слева - стандартные таблицы углового штампа?
Просто номер страницы, дату я умею вставлять, а вот как вставить в виде таблицы?
Изменено: MrBrown - 30 Дек 2018 18:59:12
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
ocet p, не понял.
Inexsu, приложил.
Sanja, Будет очень много листов.
Делается проект. Десяток разделов. Предлагается так:
Лист - раздел.
В разделе по 20-60 страниц.
В приложенном файле на первом листе размещены три страницы (для примера).
Вот мне и нужно, чтобы мой любимый Ёксель-моксель макросом определил синие границы и проставил в верхней правой ячейке каждой области номер страницы по восходящей.
Здесь, на первом листе - только три страницы для примера, на втором листе нумерация продолжается: 4, 5, 6 и т.д.
Подчеркну ещё раз: пользователь может добавлять/удалять строки и столбцы, и даже целые страницы, и после этого макрос вновь проставлял бы страницы уже в новых верхних правых ячейках.
p.s. границы я сделал синими из соображения указать макросу, в какой области искать и нумеровать ячейку.
Подскажите способ лучше.
Изменено: MrBrown - 30 Дек 2018 18:01:44
Как найти верхнюю правую ячейку в обрамлённом рамкой диапазоне?
 
Здравствуйте!
Дан прямоугольный диапазон ячеек, ограниченный рамкой, допустим, синего цвета (простыми словами - "форматка А4").
Точнее, их таких - несколько на листе. Расположены беспорядочно по всему листу.
Число строк и столбцов в каждой форматке в ходе работы пользователь может менять - удалять и вставлять дополнительные.
Как сделать, чтобы при запуске макроса, в верхнюю правую ячейку каждой форматки автоматически вставлялись номера страниц?
Спасибо.
p.s. точнее, я бы и сам разобрался со вставкой страниц (возможно), да только ума не приложу: как найти эту верхнюю правую ячейку циклом в каждой форматке.
(а также: как объединить все ячейки верхней строки кроме правой ячейки).
Как заставить программу определить границы всех форматок на листе?
p.p.s так как кроме общей границы, в каждой форматке есть ещё линии углового штампа, то я специально выделил нужные (внешние) границы синим.
Автоматическая простановка страниц и формирование оглавления
 
Здравствуйте!
Всех с наступающим Новым годом! Пусть новогодний поросёнок (как-никак, год свиньи) обернётся для каждого полной копилкой в новом году!
__________________________
Прошу помощи у знатоков уделить моей проблеме часть своего досуга.
Есть прекрасный макрос, автоматом формирующий оглавление с нумерацией страниц очередного раздела (листа).
Исходный файл с макросом взят отсюда
В приложенном файле - мои "хотелки", а тут - вопросы, а именно:
1. Для чего нужен макрос Sub Printed_Pages_Count()? Я его удалял, и без него второй макрос прекрасно формирует оглавление.
2. Как отвязать наименование листа на его закладке от оглавления? Ну, чтобы наименования разделов в оглавлении брались из верхней левой ячейки каждого листа. В приложенном файле я организовал это формулой, но это не то, нужен именно макрос.
3. Как автоматом (макросом) проставить номера страниц в верхних правых ячейках каждой страницы (номера страниц  показаны в листах красным в жёлтых ячейках)? Причём, при изменении ширины/высоты столбцов/строк, а также при их удалении/добавлении, - номера страниц также перемещались бы в новую правую верхнюю ячейку относительно границ печатной области каждой страницы.
Я так думаю, нужно в макросе задействовать понятие границ страницы (или печатной области страницы), только вот не знаю, откуда это взять и как применить. Прошу помощи. Может у кого-то уже есть подобное. Или подкиньте ссылочку про это.
Спасибо.
p.s. При новом открытии файла границы печатной области страниц пропали, но, надеюсь, там всё понятно.
p.p.s Забыл: существующий макрос добавляет страницы, с которыми соприкасаются ячейки с нумерацией. Как этого избежать?
Изменено: MrBrown - 26 Дек 2018 12:31:41
Какой формулой правильно вставить нумерацию страниц в одной из ячеек?
 
Сергей, это понятно, только я "ленюсь" на каждом листе вбивать в формуле 'Лист2', 'Лист3' и т.д..
Хотелось бы сделать своеобразную рекурсию, что ли, чтобы формула сама копировалась бы при создании нового листа копированием.
Ну, в принципе, мне и первые решения форумчан подойдут.
Всем спасибо за участие!
Какой формулой правильно вставить нумерацию страниц в одной из ячеек?
 
Благодарю, по имени листа - работает.
А как сделать, чтобы формула ссылалась бы на предыдущее значение, то есть на ту же ячейку предыдущего листа (допустим, что листы не пронумерованы, а имеют названия)?
Вот, на втором листе формула такая: ='Лист1'!O1+1
А что вписать в ячейку на третьем листе, чтобы ссылалась на второй лист?
Не ручками вписать, а просто скопировать второй лист.
А на четвертом листе - ссылалась бы на третий и т.д.
Изменено: MrBrown - 13 Ноя 2018 15:13:51
Какой формулой правильно вставить нумерацию страниц в одной из ячеек?
 
 Появилась необходимость вставить нумерацию не колонтитулом, а непосредственно в ячейке каждого листа, и надо сделать так, чтобы при копировании предыдущего листа, в той же ячейке листа последующего номер увеличивался бы на единицу.
И вторым способом - чтобы номер страницы совпадал бы с названием данного листа.
В приложенном файле ячейка с номером страницы закрашена розовым.
Спасибо.
p.s. а, может быть, у кого-то уже есть более удобные наработки по моему вопросу?
Буду рад поучиться.
Изменено: MrBrown - 13 Ноя 2018 14:57:36
Конвертирование BMP в Excel, ускорить работу маскроса
 
Андрей VG, ivanok_v2, Казанский, благодарю вас всех за участие.
Посмотрел с десяток вопросов по массивам.
Да, с организацией массива у меня проблема: как загнать пиксели в массив и как их значения оттуда разложить по ячейкам.
Пошёл решать...
Конвертирование BMP в Excel, ускорить работу маскроса
 
Здравствуйте!
Взят готовый макрос (точнее, несколько) и почти заточен "под себя".
Пиксели выбранной картинки раскладывает по ячейкам в виде кода RGB.
Прикручен стандартный статус-бар (внизу слева).
Прошу помочь ускорить работу, возможно организовав как-то массив, так как моя цель - конвертировать "тяжёлые" файлы изображений, например 6000x4000 пикселей.
Пока терпения хватает на небольшие картинки (примерно 800х500).
И ещё: если картинка не квадратная, а прямоугольная, конвертирование происходит неполное и с выводом ошибки. Почему?
Спасибо.
Сам файл прикрутить не могу: он почему-то весит порядка трёх МБ, хотя по количеству кода видно, что должен весить где-то 20-30 кБ.
Вот код:
Код
Option Explicit

Public Sub AAA()
    Dim pIF As New WIA.ImageFile
    Dim pV As WIA.Vector
    Dim IP As New WIA.ImageProcess
    Dim last As Long
    Dim iRow, iCol As Long
    Dim h As Single, w As Single
    Dim FileName As String
    Dim c As Range, i&
    Dim lr As Long
    Dim lAllCnt As Long 'количество итераций
    Const lMaxQuad As Long = 20 'длина статус-бара
    
FileName = Application.GetOpenFilename _
    ("Рисунки bmp,*.bmp,Файлы Excel,*.xls*,Текстовые файлы txt,*.txt,Рисунки jpg,*.jpg", , "Выбор файла")
    pIF.LoadFile FileName
    
    'pIF.LoadFile "c:\кекс.jpg"
    Application.ScreenUpdating = False

    Dim sh As Worksheet: Set sh = ActiveSheet
    sh.UsedRange.Interior.ColorIndex = 0

    IP.Filters.Add IP.FilterInfos("Scale").FilterID
    IP.Filters(1).Properties("MaximumWidth") = CLng(pIF.Width)
    IP.Filters(1).Properties("MaximumHeight") = CLng(pIF.Height)
    
    'last = CLng(pIF.Width# * CDbl(pIF.Height) / CDbl(pIF.Width))
    
    Set pIF = IP.Apply(pIF)
    Set pV = pIF.ARGBData
    'Stop
    
    For iRow = 1 To pIF.Height
    For iCol = 1 To pIF.Width
        
            'Cells(iRow, iCol).Interior.Color = GetColor(pV, pIF.Width, iCol, iRow)
        i = GetColor(pV, pIF.Width, iCol, iRow)
 
            Cells(iRow, iCol).Value = Format$(i Mod 256, "000\,") & Format$((i Mod 65536) \ 256, "000\,") & Format$(i \ 65536, "000")     
            
    Next iCol
   
Application.StatusBar = "Выполнено: " & Int(100 * iRow / iCol) & "%" & String(CLng(lMaxQuad * iRow / iCol), ChrW(9724)) & String(lMaxQuad - CLng(lMaxQuad * iRow / iCol), ChrW(9723))
    
    Next iRow

    'Очищаем статус-бар от значений после выполнения
    Application.StatusBar = False
    Application.ScreenUpdating = True
End Sub

Public Function GetColor(ByVal inVector As WIA.Vector, ByVal imgWidth As Long, ByVal xPixelID As Long, ByVal yPixelID As Long) As Long
    Dim ToHex As String, vCount As Long
    ToHex = VBA.Hex$(inVector(xPixelID + (yPixelID - 1&) * imgWidth))
    vCount = VBA.Len(ToHex)
    If vCount < 8 Then ToHex = VBA.String$(8 - vCount, "0") & ToHex
    GetColor = VBA.RGB(CInt("&H" & VBA.Mid$(ToHex, 3, 2)), CInt("&H" & VBA.Mid$(ToHex, 5, 2)), CInt("&H" & VBA.Mid$(ToHex, 7, 2)))
End Function

Function GetFilePath(Optional ByVal Title As String = "Выберите файл для обработки", _
                     Optional ByVal InitialPath As String = "c:\", _
                     Optional ByVal FilterDescription As String = "Книги Excel", _
                     Optional ByVal FilterExtention As String = "*.xls*") As String

    On Error Resume Next
    With Application.FileDialog(msoFileDialogOpen)
        .ButtonName = "Выбрать": .Title = Title: .InitialFileName = InitialPath
        .Filters.Clear: .Filters.Add FilterDescription, FilterExtention
        If .Show <> -1 Then Exit Function
        GetFilePath = .SelectedItems(1): PS = Application.PathSeparator
    End With
End Function
Перевести картинку на лист excel цветовым кодом. И - обратно.
 
Казанский, благодарю за информацию. Узнал много нового.
Однако, идея шифрования у меня совершенно иная.

Вот почему я хочу "разложить всё по полочкам" в приложении Excel, чтобы понять, как она (идея) будет работать (или НЕ работать).

Вопрос рядом с темой: где ковырнуть (изменить) код, чтобы программа работала с картинками размером более 200х200 пикселей?
Не могу найти это ограничение.
Спасибо.
Как в макросе конвертирования увеличить размеры картинки?
 
Я так полагаю:ограничение запрятано где-то в свойствах массива, в который загружается картинка.
Но я ничего такого не вижу! Никаких ограничений по его размерности.
Помогите, кто в теме!
Как в макросе конвертирования увеличить размеры картинки?
 
Казанский, я это сделал сразу же. Не получилось
Потом перенёс все макросы и формы в новый файл (Excel 2013) - не получилось.
Ну и написал вопрос на форуме.
Как в макросе конвертирования увеличить размеры картинки?
 
Здравствуйте! Есть программа конвертирования картинок в ячейки Excel попиксельно.
Вот она: https://excelvba.ru/code/Bitmap2Sheet
Во вложении (чуть ниже кодинга) можно скачать саму программу.
Но максимальный размер картинки не превышает 200 пикс.
Как увеличить размер картинок?

Просмотрел все строки макросов, не нашёл, за что зацепиться.
Подозреваю, что здесь скрыт ещё один макрос, ограничивающий размер картинок.
Или нет?
Помогите, кто в теме.
Спасибо.
Изменено: MrBrown - 26 Июл 2018 12:18:00
Перевести картинку на лист excel цветовым кодом. И - обратно.
 
Казанский, да, именно этим и пользуюсь. Попробую переделать.
Речь не идёт о массовой обработке многих файлов. Только один файл-картинка.
Просто, пытаюсь экспериментировать в стеганографии. Но для этого мне и нужны два макроса конвертации туда-сюда (САБЖ).
А уж в Excel я попробую воплотить свою идею замены пикселей по ключу шифра.
Идея очень интересная (для меня, естественно).
p.s. возможно изобретаю велосипед, но в инете пока не нашёл ничего про свой метод замены пикселей.
Перевести картинку на лист excel цветовым кодом. И - обратно.
 
Андрей VG,  у-у-у, это мне совсем недоступно. Я умею лишь ваять несложные макросы на VBA по выборке, сортировке данных.
Но это всё - в Excel. А вот чтобы Excel вычислял инфу из стороннего файла с другим расширением - это у меня впервые.
Перевести картинку на лист excel цветовым кодом. И - обратно.
 
Казанский, благодарю. Буду пробовать.
Однако здесь получаются лишние телодвижения:
1. Конвертирование.
2. Перевод цвета в код.
А как сделать это сразу, чтобы макрос анализировал указанную картинку и заполнял таблицу кодом?
Изменено: MrBrown - 25 Июл 2018 13:29:23
Страницы: 1 2 3 След.
Наверх