Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Вставка картинки без обновления с источником, При вставке картинки она обновляется вместе с исходными данными
 
Уважаемые эксперты, хелп!
У меня просто файл взбесился. Не могу понять в чем причина. Все работало корректно и вдруг какой-то глюк.
В файле-примере макрос на листе ПЧВ обрабатывает данные, в конце копирует диапазон D5:V6  и вставляет в виде картинки на лист ВставкаПЧВ.
Вставлял все хорошо. И вдруг стал обновлять вставляемую картинку вместе с источником. Картинка вставляется несвязанная. Не понимаю, почему он это делает.
Помогите, пожалуйста((
Пробовала руками вставлять, все равно глюк. Пересчет формул отключен. Не помогает.
Неактивны поля: вставить срез и вставить временную шкалу в сводной таблице
 
Добрый день.

В прилагаемом файле почему-то недоступны срезы и временные шкалы в сводной таблице. В других книгах доступны. Не могу понять в чем причина.
Не хочу создавать новый файл, так как придется переносить очень много данных (я удалила листы в файле-примере просто).

Помогите, плиз, разобраться.
Отмена встреч Outlook из Excel
 
Всем привет! Может кто-то знает как реализовать следующую задачу: есть макрос, который создает встречи в Outlook. С ним все ок.

Теперь стоит задача создать макрос, который отменяет встречи при возникновении определенных событий в Excel (неважно каких, с этим нет проблем). В Excel есть вся информация по встрече: дата, время начала, длительность, участники, тема. Как сделать, чтобы отмена формировалась автоматически? Какие свойства, методы использовать? Заранее спасибо за ответы)
Ошибка при подключении к Outlook
 
Всем привет! Прошу помощи. Не могу понять в чем дело. Есть макрос, который обращается к Outlook  и производит отправку встреч адресатам. Все прекрасно работало до сегодняшнего дня. Вдруг стал выдавать ошибку: Run time error 2147221233 (8004010F) Не удалось выполнить операцию. Интерфейс передачи сообщений возвратил неизвестную ошибку. Если это повторится, перезагразуите Outlook. Сбой операции. Невозможно найти объект.


Причем на любом аутлуке. С любой учеткой. Не могу понять в чем дело. Так Outlook прекрасно работает в ручном режиме: отправляет, получает почту. Ошибка только при обращении через код.
Код макроса:
Код
Sub СоздатьВстречи()
    
Dim oApp As Object  ' Outlook.Application
Dim appt As Object  ' Outlook.AppointmentItem
Dim sh2 As Excel.Worksheet
Dim sh5 As Excel.Worksheet


Prepare
  ' late bound constants
Const olAppointmentItem As Long = 1
Const olBusyStatus As Long = 2
Const olMeeting = 1

  ' get range of dates
Set sh2 = ThisWorkbook.Sheets("Расписание")
Set sh5 = ThisWorkbook.Sheets("Справочник")
  
sh2.Activate
sh2.Range("A1").Select
  
iendX = sh2.Cells(1000000, 2).End(xlUp).Row 'определяем все строки расписания

zDate1 = DateValue(Now) ' определяем текущую дату

  
Set FindzDate1 = Columns(1).Find(What:=zDate1, After:=Cells(1, 1), LookIn:=xlValues, _
                            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                            MatchCase:=False, SearchFormat:=False) 'ищем дату начала отчета
                            
istartX = FindzDate1.Row

Set oApp = GetOutlookApp

If oApp Is Nothing Then
    MsgBox "Outlook не доступен!", vbInformation
    Ended
    Exit Sub
End If

For Z = 29025 To 29037 ' цикл по строкам расписания с текущей даты до конца

If sh2.Cells(Z, 7).Interior.Color <> 65535 And sh2.Cells(Z, 7) <> "" Then ' если еще не отправляли встречу по этому уроку

    zDate = CVDate(sh2.Cells(Z, 1)) 'дата
    ZTime = CVDate(sh2.Cells(Z, 3)) 'время
    zLesson = sh2.Cells(Z, 5) 'вид урока
    zlevel = sh2.Cells(Z, 6) 'уровень
    zTeacher = sh2.Cells(Z, 7) 'преподаватель
    zLoc = sh2.Cells(Z, 4) & " класс" 'преподаватель
    
sh5.Activate
sh5.Range("A1").Select
    Set FindTeacher = Cells.Find(What:=zTeacher, After:=Cells(1, 1), LookIn:=xlValues, _
                        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                        MatchCase:=False, SearchFormat:=False)
    If Not FindTeacher Is Nothing Then zrow = FindTeacher.Row
    
    adTeacher = sh5.Cells(zrow, 2)
sh2.Activate
If zlevel = "ПробноеГ" Or zlevel = "ПробноеГ_пл" Then ZTime = CVDate(sh2.Cells(Z - 1, 3)) 'время

If zlevel = "ПробноеБ" Or zlevel = "ПробноеБ_пл" Or zlevel = "ПробноеБГ" Or zlevel = "ПробноеБГ_пл" Or zlevel = "ПробноеГ" Or zlevel = "ПробноеГ_пл" Then
    zlevel = "Пробное"
    GoTo 77
End If


        ZPosV = InStr(1, zLesson, "_", vbTextCompare) 'Вид: позиция "_"
        ZPosP = InStr(1, zlevel, "_", vbTextCompare) 'Подвид: позиция "_"
        If ZPosP <> 0 Then zNomerU = Right(zlevel, Len(zlevel) - ZPosP) 'определяем номер урока
        If ZPosV <> 0 Then
            'Вид: если есть "_"
            zlevel = Right(zLesson, Len(zLesson) - ZPosV)
            zLesson = Left(zLesson, ZPosV - 1)
        Else
            'Вид: если нет "_"
            If ZPosP <> 0 Then zlevel = Left(zlevel, ZPosP - 1) 'Подвид: если есть "_"
        End If
77:
Select Case zlevel

Case "индив"
IDur = 60

Case "восст"
IDur = 60

Case Else
IDur = 120

End Select

   Set appt = oApp.CreateItem(olAppointmentItem)

    With appt
     .Subject = sh2.Cells(Z, 5) & "_" & sh2.Cells(Z, 6)
     '.body = arrMsgs(i)
      .RequiredAttendees = adTeacher
      .Start = zDate + ZTime
      .Duration = IDur
      .MeetingStatus = olMeeting
      .Location = zLoc
      .Send

    End With
sh2.Cells(Z, 7).Interior.Color = 65535
End If
  
Next Z
Ended
End Sub


Function GetOutlookApp() As Object
' return Outlook.Application object
 On Error Resume Next
  Set GetOutlookApp = CreateObject("Outlook.Application")
End Function
Изменено: matr0001 - 01.09.2017 18:25:15
Не срабатывает вставка данных в другой файл, если лист защищен
 
Всем привет! Помогите, пжста, разобраться со следующей ситуацией:

Есть файл Excel, в котором содержатся данные. В этом файле есть макрос, который открывает другой файл Excel (База) и записывает туда данные. Когда лист в файле База не защищен, то все работает прекрасно. Как только я защищаю лист в файле База, то вставка данных туда не срабатывает. Причем макросом я пробовала распароливать лист разными вариантами. И так:
Код
Private Sub Workbook_Open()
Worksheets("Встречи-Продажи").Unprotect Password:="111"
End Sub

И паролить лист при открытии только на уровне UserInterfaceOnly:

Код
Private Sub Workbook_Open()Worksheets("Встречи-Продажи").Protect Password:="111", UserInterfaceOnly:=True, AllowFiltering:=TrueEnd Sub

Ничего не получается. Вроде лист распаролен, а данные все равно не вставляются. Выдает ошибку: RuntimeError 1004: PasteSpesial methot of range failed

Как можно это обойти? Нужно сделать так, чтобы лист был для пользователей запаролен, но при этом макросом данные вставлялись.
Изменено: matr0001 - 31.08.2017 14:40:03
Преобразование текста в число в макросе, вне зависимости от настроек разделителей
 
Всем добрый день! Подскажите, пжста, как преобразовать в VBA текст в число, чтобы вне зависимости от разделителей, у пользователей точно получилось число. Обрабатываемые значения имеют вид - 54 174,00. У меня разделители для числа такие - 54174.00.  У других пользователей. 54174,00.   Как обойти этот момент? Чтобы точно у всех работало. Спасибо.
ВПР в формуле массива
 
Всем привет! Подскажите, пжста, как использовать функцию ВПР (VLookup) в формуле массива?
Пример такой:
{=SUMPRODUCT((MONTH(Расписание!$A$10:$A$15)=F$2)*IFERROR(VLOOKUP(TRIM(RIGHT(Расписание!$F$10:$F$15,1)&LEFT(Расписание!$E$10:$E$15,1)),'Переменные расходы'!$A$53:$B$101,2,FALSE),0)*((Расписание!$G$10:$G$15)='Переменные расходы'!$A6))}

Все считает корректно, кроме блока с ВПР: для всех значений ищет только первое и дальше не идет. То есть в итоге умножает весь массив на одно и то же значение. Как правильно использовать ВПР в формуле массива? Спасибо!
Связать несколько книг Excel в OneDrive, выдает сообщение: ссылки на внешние источники не поддерживаются
 
Дорогие форумчане, помогите, пожалуйста!
Уже весь интернет перерыла - нигде нет ответа. Хочу связать несколько книг на OneDrive, но не получается. Выдает сообщение: ссылки на внешние источники не поддерживаются и будут отключены. Как решить эту проблему? Как прописать путь на другую книгу там же? Или может быть, с помощью другого ресурса это можно решить? Как пользоваться связанными книгами в облаке? Заранее спасибо!
Страницы: 1
Наверх