2015-01-25 2 views
-1

Я в управлении гостиничным хозяйством. Мне нужен лучший способ отслеживать ход уборки комнат каждый день.MACRO и заселяющие ячейки на одном листе на основе двух рандомизированных фрагментов информации на другом листе

Я создал визуальное изображение отеля в таблице Excel, где, если в комнате (ячейке в моей таблице) есть «3», ячейка становится красной, а другая диаграмма внизу будет считать комнату. Таким образом, если у меня есть 35 номеров, которые необходимо убрать до 3 вечера, я могу увидеть, где они расположены по всему отелю, и у вас есть определенное количество их в нижней части страницы. То же самое относится к 2-м сеансам с номером «2», за исключением того, что он становится синим.

Теперь для сложной части ... Мне нужен весь график, чтобы автоматически заполнить так, чтобы каждое значение ячейки определялось двумя различными частями информации на другой электронной таблице и из двух разных столбцов этой электронной таблицы. Информация, содержащаяся в столбце 1, является случайной и должна быть найдена, но информация в столбце 2 находится непосредственно и напрямую связана с ее аналогом в столбце 1.

Мне нужно 1] номер комнаты, расположенный в столбец 1 на другой электронной таблице, чтобы автоматически соответствовать правильной ячейке (или номеру номера) в моей электронной таблице. 2] В колонке 2 на другой таблице перечислены времена, в которые они проверяют (14:00, 15:00). Мне нужно время в столбце 2, чтобы соответствовать номеру комнаты в столбце 1, поскольку она автоматически заполняет мою диаграмму.

Так что, если номер 305 находится в списке (не все номера будут), а в колонке рядом с ним вы увидите прибытие 14:00 (2 вечера), мне нужна правильная ячейка в моей таблице (комната 305), чтобы заполнить цифрой 2. Если бы это была комната 305 с прибытием 3 вечера, ей нужно было бы автоматически заполнить цифрой 3. Я знаю, что MACRO придется использовать, но я не могу найти формулы для изменения моей ячейки на основе номер комнаты, который случайным образом указан в столбце 1, и его соответствующее время проверки в столбце 2. Пожалуйста, помогите !!

+0

Что вы делали до сих пор? –

ответ

0

Прежде всего вам необходимо сопоставить местоположение ячейки в карте номера с номером номера, затем посмотреть номер номера в таблице «комнаты времени», а затем вернуть время проверки в ячейку на карте.

Вот пример кода. Эта функция вызывается из каждого из клеток в комнате «карты»: Пример

Function WhatTime(rngMap as Range, rngTime As Range) 
    Application.Volatile 

    Dim addr, v, rv 

    addr = Application.Caller.Address(False, False) 
    'find the room number... 
    v = Application.VLookup(addr, rngMap, 2, False) 

    If Not IsError(v) Then 
     'got the room number: look up the time 
     v = Application.VLookup(v, rngTimes, 2, False) 
     If Not IsError(v) Then 
      rv = IIf(Len(v) > 0, Hour(v) - 12, "") 
     Else 
      rv = "" 'room not in time listing 
     End If 
    Else 
     rv = "Room?" 'cell address not in cell<->room map 
    End If 

    WhatTime = rv 

End Function 

Настройка: Все клетки в карте комнатной имеют формулу =WhatTIme($F$7:$G$11, $F$14,$G$18)

enter image description here

Ячейки в карте окрашены используя условное форматирование.

Смежные вопросы